场景
S3被配置为将事件通知发送到SQS队列。
Filebeat使用aws-s3-plugin通过SQS队列从S3中提取日志。
filebeat.inputs:
- type: aws-s3
queue_url: https://sqs.us-east-2.amazonaws.com/aws-id/queue-name
gzip: true
file_selectors:
- regex: '.*-mytype.log.*'File节拍删除队列中的所有消息,而它只应该处理和删除与file_selectors regex匹配的消息。
问题:如果消息与 regex不匹配,如何将
filebeat配置为而不是删除队列消息?
附注:
我试图实现的用例是
files)
file_selectors for file_type_1。文件节拍输出:为file_type_2配置的file_selectors file_selectors。文件节拍输出: Elasticsearch)
发布于 2021-11-15 17:15:37
@sniper --我不认为配置会以您希望它使用单个SQS队列的方式工作。每个文件节拍输入将尝试读取队列中的所有消息,并使用file_selectors来决定要下载哪些文件,但读取和忽略所有其他消息。
您可以使用的模式是使用SNS和SQS的扇出。S3在上传文件时将事件发布到SNS。多个SQS队列(每个队列对应于一个文件节拍输入)被订阅到SNS。https://docs.aws.amazon.com/sns/latest/dg/sns-sqs-as-subscriber.html
https://stackoverflow.com/questions/69973811
复制相似问题