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 文档。