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