是否有解决方案来记录rabbitmq中的所有消息但不使用rabbitmq_management?

时间:2016-11-08 07:27:22

标签: rabbitmq

我知道rabbitmq_tracing是RabbitMQ的一个插件,它可以提供一个GUI来捕获跟踪的消息并以文本或JSON格式文件记录它们。但是插件是性能成本,有没有办法在没有这个插件的情况下记录所有消息? 或者是否有一种折衷的方式来自动记录消息而不使用management plugin?因为在GUI上配置跟踪不能容忍某些客户。 任何回应都将不胜感激。

1 个答案:

答案 0 :(得分:0)

我无法找到一个很好的解决方案来记录所有没有rabbitmq_management的消息。但是打开这个插件后,通过命令行添加和删除rabbitmq trace:

添加新追踪:
[windows:] curl -i -u guest:guest -H "content-type:application/json" -XPUT ^ http://localhost:15672/api/traces/%2f/my-trace ^ -d"{""format"":""json"",""pattern"":""#"",""max_payload_bytes"":1000}"
[linux:] curl -i -u guest:guest -H "content-type:application/json" -XPUT \ http://localhost:15672/api/traces/%2f/my-trace \ -d'{"format":"text","pattern":"#", "max_payload_bytes":1000}'

删除跟踪:
[windows:] curl -i -u guest:guest -H "content-type:application/json" -XDELETE ^ http://localhost:15672/api/traces/%2f/my-trace
[linux:] curl -i -u guest:guest -H "content-type:application/json" -XDELETE \ http://localhost:15672/api/traces/%2f/my-trace