【发布时间】:2015-07-02 06:43:34
【问题描述】:
我正在使用 logstash 读取 CSV 文件并使用 stomp 协议将信息发布到我的 ActiveMQ。
一切都很好,我只想为这些消息添加持久性,但我不知道如何告诉 logstash 这样做。
ActiveMQ 网站说我需要告诉我的 stomp 生产者添加“persistent:true”参数,但我在 logstash 网站上没有找到任何关于此的文档。
有人知道吗?
提前致谢,
【问题讨论】:
我正在使用 logstash 读取 CSV 文件并使用 stomp 协议将信息发布到我的 ActiveMQ。
一切都很好,我只想为这些消息添加持久性,但我不知道如何告诉 logstash 这样做。
ActiveMQ 网站说我需要告诉我的 stomp 生产者添加“persistent:true”参数,但我在 logstash 网站上没有找到任何关于此的文档。
有人知道吗?
提前致谢,
【问题讨论】:
现在您可以使用属性 headers 来发送持久消息:
stomp {
host => "localhost"
port => 61612
destination => "my_queue"
headers => {
"persistent" => true
}
}
来源: https://github.com/logstash-plugins/logstash-output-stomp/issues/7
【讨论】:
嗯,logstash stomp 输出不能设置持久性。
如果这对您很重要,那么它应该是源代码中的一个简单修复。
你可以找到文件here:
还有这一行:
@client.send(event.sprintf(@destination), event.to_json)
应该是这样的东西:
@client.send(event.sprintf(@destination), event.to_json, :persistent => true)
您必须自己构建并安装插件。我的 Ruby 技能有限,所以我不知道该怎么做。也许考虑将其添加为配置参数并通过拉取请求贡献它?
【讨论】: