Rabbitmq 输出插件

编辑

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

获取帮助

编辑

如有关于插件的问题,请在Discuss论坛中开贴。如有错误报告或功能请求,请在Github中开一个 issue。有关 Elastic 支持的插件列表,请查阅Elastic 支持矩阵

描述

编辑

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

相关链接

Rabbitmq 输出配置选项

编辑

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

设置 输入类型 必需

参数

数组

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
  • 此设置没有默认值。

交换机类型(扇出、主题、直接)

heartbeat

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

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

host

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

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

如果初始连接时提供了多个主机,并且随后任何恢复尝试的主机都是随机选择并连接的。请注意,一次只有一个主机连接处于活动状态。

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

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

  • 路由密钥在扇出交换机上将被忽略。

message_properties

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

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

示例

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

passive

编辑

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

password

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

RabbitMQ 密码

persistent

编辑

RabbitMQ 是否应将消息持久化到磁盘?

port

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

要连接的 RabbitMQ 端口

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

启用或禁用 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

编辑

RabbitMQ 用户名

vhost

编辑

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

通用选项

编辑

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

设置 输入类型 必需

codec

codec

enable_metric

布尔值

id

字符串

codec

编辑

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

enable_metric

编辑

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

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

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

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

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