Sqs 输入插件
编辑Sqs 输入插件编辑
有关其他版本,请参阅 版本化插件文档。
获取帮助编辑
如果您对插件有任何疑问,请在 Discuss 论坛中打开一个主题。对于错误或功能请求,请在 Github 中打开一个问题。有关 Elastic 支持的插件列表,请参阅 Elastic 支持矩阵。
描述编辑
从 Amazon Web Services 简单队列服务 (SQS) 队列中拉取事件。
SQS 是一个简单、可扩展的队列系统,是 Amazon Web Services 工具套件的一部分。
尽管 SQS 与 AMQP 等其他队列系统类似,但它使用自定义 API,并且要求您拥有 AWS 账户。有关 SQS 工作原理、定价计划以及如何设置队列的更多详细信息,请参阅 http://aws.amazon.com/sqs/。
要使用此插件,您 必须
- 拥有一个 AWS 账户
- 设置一个 SQS 队列
- 创建一个有权从队列中消费消息的身份。
“消费者”身份必须对队列具有以下权限
-
sqs:ChangeMessageVisibility
-
sqs:ChangeMessageVisibilityBatch
-
sqs:DeleteMessage
-
sqs:DeleteMessageBatch
-
sqs:GetQueueAttributes
-
sqs:GetQueueUrl
-
sqs:ListQueues
-
sqs:ReceiveMessage
通常,您应该设置一个 IAM 策略,创建一个用户并将 IAM 策略应用于该用户。示例策略如下
{ "Statement": [ { "Action": [ "sqs:ChangeMessageVisibility", "sqs:ChangeMessageVisibilityBatch", "sqs:DeleteMessage", "sqs:DeleteMessageBatch", "sqs:GetQueueAttributes", "sqs:GetQueueUrl", "sqs:ListQueues", "sqs:ReceiveMessage" ], "Effect": "Allow", "Resource": [ "arn:aws:sqs:us-east-1:123456789012:Logstash" ] } ] }
有关设置 AWS 身份的更多详细信息,请参阅 http://aws.amazon.com/iam/。
Sqs 输入配置选项编辑
此插件支持以下配置选项以及稍后描述的 通用选项。
设置 | 输入类型 | 是否必需 |
---|---|---|
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
是 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
另请参阅 通用选项,了解所有输入插件支持的选项列表。
access_key_id
编辑
- 值类型为 字符串
- 此设置没有默认值。
此插件使用 AWS SDK 并支持以下几种获取凭证的方式,将按以下顺序尝试
- 静态配置,使用 logstash 插件配置中的
access_key_id
和secret_access_key
参数 aws_credentials_file
指定的外部凭证文件- 环境变量
AWS_ACCESS_KEY_ID
和AWS_SECRET_ACCESS_KEY
- 环境变量
AMAZON_ACCESS_KEY_ID
和AMAZON_SECRET_ACCESS_KEY
- IAM 实例配置文件(在 EC2 中运行时可用)
additional_settings
编辑
- 值类型为 哈希
- 默认值为
{}
用于参数化与 SQS 连接的设置和对应值的键值对。有关完整列表,请参阅 AWS SDK 文档。例如
input { sqs { access_key_id => "1234" secret_access_key => "secret" queue => "logstash-test-queue" additional_settings => { force_path_style => true follow_redirects => false } } }
aws_credentials_file
编辑
- 值类型为 字符串
- 此设置没有默认值。
包含 AWS 凭证哈希的 YAML 文件的路径。仅当未设置 access_key_id
和 secret_access_key
时,才会加载此文件。文件内容应如下所示
:access_key_id: "12345" :secret_access_key: "54321"
endpoint
编辑
- 值类型为 字符串
- 此设置没有默认值。
要连接的端点。默认情况下,它使用 region
的值构造。这在连接到与 S3 兼容的服务时很有用,但请注意,AWS SDK 不能保证这些服务能正常工作。
queue_owner_aws_account_id
编辑
- 值类型为 字符串
- 此设置没有默认值。
如果您想使用带有嵌入式策略的 跨账户队列,则为拥有该队列的 AWS 账户的 ID。请注意,AWS SDK 仅支持数字账户 ID,不支持账户别名。
role_arn
编辑
- 值类型为 字符串
- 此设置没有默认值。
要承担的 AWS IAM 角色(如果有)。这用于生成临时凭证,通常用于跨账户访问。有关更多信息,请参阅 AssumeRole API 文档。
通用选项编辑
所有输入插件都支持以下配置选项
详细信息编辑
codec
编辑
- 值类型为 编解码器
- 默认值为
"json"
用于输入数据的编解码器。输入编解码器是一种便捷的方法,可以在数据进入输入之前对其进行解码,而无需在 Logstash 管道中使用单独的过滤器。