Rabbitmq 输出插件编辑

有关其他版本,请参阅 版本化插件文档

获取帮助编辑

有关插件的问题,请在 讨论 论坛中发布主题。对于错误或功能请求,请在 Github 中创建问题。有关 Elastic 支持的插件列表,请参阅 Elastic 支持矩阵

描述编辑

将事件推送到 RabbitMQ 交换机。需要 RabbitMQ 2.x 或更高版本(建议使用 3.x)。

相关链接

Rabbitmq 输出配置选项编辑

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

设置 输入类型 必需

arguments

数组

automatic_recovery

布尔值

connect_retry_interval

数字

connection_timeout

数字

durable

布尔值

exchange

字符串

exchange_type

字符串,其中之一为 ["fanout", "direct", "topic", "x-consistent-hash", "x-modulus-hash"]

heartbeat

数字

host

字符串

key

字符串

message_properties

哈希

passive

布尔值

password

password

persistent

布尔值

port

数字

ssl

布尔值

ssl_certificate_password

字符串

ssl_certificate_path

有效的系统路径

ssl_version

字符串

user

字符串

vhost

字符串

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

 

arguments编辑

  • 值类型为 数组
  • 默认值为 {}

作为数组的额外队列参数。要使 RabbitMQ 队列镜像,请使用:{"x-ha-policy" => "all"}

automatic_recovery编辑

将此设置为从断开的连接中自动恢复。您几乎肯定不想覆盖此设置!!!

connect_retry_interval编辑

  • 值类型为 数字
  • 默认值为 1

重试连接之前等待的时间(以秒为单位)

connection_timeout编辑

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

默认连接超时时间(以毫秒为单位)。如果未指定,则超时时间为无限。

durable编辑

此交换机是否持久?(即;它是否应该在代理重启后存活?)

exchange编辑

  • 这是必需的设置。
  • 值类型为 字符串
  • 此设置没有默认值。

交换机的名称

exchange_type编辑

  • 这是必需的设置。
  • 值可以是以下任何一个:fanoutdirecttopicx-consistent-hashx-modulus-hash
  • 此设置没有默认值。

交换机类型(fanout、topic、direct)

heartbeat编辑

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

心跳延迟时间(以秒为单位)。如果未指定,则不会发送心跳。

host编辑

  • 这是必需的设置。
  • 值类型为 字符串
  • 此设置没有默认值。

rabbitmq 输入/输出 RabbitMQ 服务器地址的通用功能 host 可以是单个主机,也可以是主机列表,例如 host ⇒ "localhost" 或 host ⇒ ["host01", "host02"]

如果在初始连接和任何后续恢复尝试中提供了多个主机,则会随机选择主机并连接到该主机。请注意,一次只能有一个主机连接处于活动状态。

key编辑

  • 值类型为 字符串
  • 默认值为 "logstash"

此插件的默认编解码器为 JSON。您可以根据自己的特定需求覆盖此设置。默认情况下要路由到的键。默认为 logstash

  • 路由键在 fanout 交换机上被忽略。

message_properties编辑

  • 值类型为 哈希
  • 默认值为 {}

在此处添加要为每条消息设置的属性,例如 content_typepriority。值可以是 sprintf 模板,其值将根据每条消息从事件中填充。

示例

    message_properties => {
      "content_type" => "application/json"
      "priority" => 1
    }

passive编辑

被动队列创建?这对于在不修改服务器状态的情况下检查队列是否存在很有用。

password编辑

  • 值类型为 密码
  • 默认值为 "guest"

RabbitMQ 密码

persistent编辑

RabbitMQ 应该将消息持久化到磁盘吗?

port编辑

  • 值类型为 数字
  • 默认值为 5672

要连接的 RabbitMQ 端口

ssl编辑

  • 值类型为 布尔值
  • 此设置没有默认值。

启用或禁用 SSL。请注意,默认情况下远程证书验证处于关闭状态。如果您需要证书验证,请指定 ssl_certificate_path 和 ssl_certificate_password

ssl_certificate_password编辑

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

在 ssl_certificate_path 中指定的加密 PKCS12 (.p12) 证书文件的密码

ssl_certificate_path编辑

  • 值类型为 路径
  • 此设置没有默认值。

用于验证远程主机的 PKCS12 (.p12) 格式的 SSL 证书的路径

ssl_version编辑

  • 值类型为 字符串
  • 默认值为 "TLSv1.2"

要使用的 SSL 协议版本。

user编辑

  • 值类型为 字符串
  • 默认值为 "guest"

RabbitMQ 用户名

vhost编辑

要使用的 vhost(虚拟主机)。如果您不知道这是什么,请保留默认值。除了默认 vhost ("/") 之外,vhost 的名称不应以正斜杠开头。

通用选项编辑

以下配置选项受所有输出插件支持

设置 输入类型 必需

enable_metric

布尔值

id

字符串

enable_metric编辑

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

id编辑

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

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

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

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