Sns 输出插件

编辑

对于其他版本,请参阅 版本化插件文档

获取帮助

编辑

有关插件的问题,请在 Discuss 论坛中发起主题。对于错误或功能请求,请在 Github 中提交问题。有关 Elastic 支持的插件列表,请查阅 Elastic 支持矩阵

描述

编辑

SNS 输出。

将事件发送到 Amazon 的简单通知服务,这是一个托管的发布/订阅框架。它支持各种订阅类型,包括电子邮件、HTTP/S、短信和 SQS。

有关该服务的更多文档,请参阅

http://docs.amazonwebservices.com/sns/latest/api/

此插件在接收到的事件中查找以下字段

  • sns - 如果在配置文件中找不到 ARN,则将其用作发布的 ARN。
  • sns_subject - 应使用的主题行。可选。如果不存在 sns_subject,则将使用 "%{host}"。主题将被截断为 100 个字符。如果 sns_subject 设置为非字符串值,则将保存该值的 JSON 版本。
  • sns_message - 要发送的消息的可选字符串。如果将其设置为非字符串值,则将使用指定的 codec 进行编码。如果未设置此值,则整个事件将使用 codec 进行编码,其中 @message 将被截断,以使 JSON 的长度适合 32768 字节。

升级到 2.0.0

编辑

此插件以前有一个 format 选项,用于控制在发送到 SNS 之前消息的编码。此插件现在使用 Logstash 标准 codec 选项进行编码。如果您希望与 v0/1 codec (format => "plain") 相同的 *plain* 格式,请使用 codec => "s3_plain"

Sns 输出配置选项

编辑

此插件支持以下配置选项以及稍后描述的 通用选项

设置 输入类型 必需

access_key_id

字符串

arn

字符串

aws_credentials_file

字符串

proxy_uri

字符串

publish_boot_message_arn

字符串

region

字符串,其中之一 ["us-east-1", "us-east-2", "us-west-1", "us-west-2", "eu-central-1", "eu-west-1", "eu-west-2", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2", "sa-east-1", "us-gov-west-1", "cn-north-1", "ap-south-1", "ca-central-1"]

secret_access_key

字符串

session_token

字符串

use_aws_bundled_ca

布尔值

另请参阅 通用选项,以获取所有输出插件支持的选项列表。

 

access_key_id

编辑
  • 值类型为 字符串
  • 此设置没有默认值。

此插件使用 AWS SDK 并支持多种获取凭证的方式,这些方式将按以下顺序尝试

  1. 静态配置,使用 logstash 插件配置中的 access_key_idsecret_access_key 参数
  2. aws_credentials_file 指定的外部凭证文件
  3. 环境变量 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY
  4. 环境变量 AMAZON_ACCESS_KEY_IDAMAZON_SECRET_ACCESS_KEY
  5. IAM 实例配置文件(在 EC2 内部运行时可用)
  • 值类型为 字符串
  • 此设置没有默认值。

要将消息发送到的可选 ARN。如果您未设置此值,则必须在事件中包含 sns 字段以在每个消息的基础上设置 ARN!

aws_credentials_file

编辑
  • 值类型为 字符串
  • 此设置没有默认值。

包含 AWS 凭证哈希的 YAML 文件的路径。仅当未设置 access_key_idsecret_access_key 时,才会加载此文件。文件内容应如下所示

    :access_key_id: "12345"
    :secret_access_key: "54321"

proxy_uri

编辑
  • 值类型为 字符串
  • 此设置没有默认值。

如果需要,代理服务器的 URI

publish_boot_message_arn

编辑
  • 值类型为 字符串
  • 此设置没有默认值。

在此处指定 SNS 主题的 ARN 时,当注册此插件时,消息“Logstash 成功启动”将发送到该 ARN。

示例:arn:aws:sns:us-east-1:770975001275:logstash-testing

region

编辑
  • 值可以是以下任何一个:us-east-1us-east-2us-west-1us-west-2eu-central-1eu-west-1eu-west-2ap-southeast-1ap-southeast-2ap-northeast-1ap-northeast-2sa-east-1us-gov-west-1cn-north-1ap-south-1ca-central-1
  • 默认值为 "us-east-1"

AWS 区域

secret_access_key

编辑
  • 值类型为 字符串
  • 此设置没有默认值。

AWS 密钥访问密钥

session_token

编辑
  • 值类型为 字符串
  • 此设置没有默认值。

用于临时凭证的 AWS 会话令牌

use_aws_bundled_ca

编辑

使用与 AWS SDK 捆绑的 CA 证书来验证 SSL 对等证书。对于默认证书不可用(例如 Windows)的情况,您可以将其设置为 true

通用选项

编辑

所有输出插件都支持这些配置选项

设置 输入类型 必需

codec

codec

enable_metric

布尔值

id

字符串

codec

编辑
  • 值类型为 codec
  • 默认值为 "plain"

用于输出数据的编解码器。输出编解码器是在数据离开输出之前对其进行编码的便捷方法,而无需在 Logstash 管道中使用单独的过滤器。

enable_metric

编辑

禁用或启用此特定插件实例的指标日志记录。默认情况下,我们会记录所有可以记录的指标,但您可以禁用特定插件的指标收集。

  • 值类型为 字符串
  • 此设置没有默认值。

在插件配置中添加唯一的 ID。如果未指定 ID,Logstash 将生成一个。强烈建议在配置中设置此 ID。当您有两个或多个相同类型的插件时,这尤其有用。例如,如果您有 2 个 sns 输出。在这种情况下,添加命名 ID 将有助于在使用监控 API 时监控 Logstash。

output {
  sns {
    id => "my_plugin_id"
  }
}

id 字段中的变量替换仅支持环境变量,不支持使用密钥存储中的值。