我如何设置 RabbitMQ 日志记录级别来调试,真的吗?

Ars*_*nko 6 configuration logging rabbitmq

我试图弄清楚如何使用 RabbitMQ 3.6.6 解决特定问题。为了收集更多信息,我想将日志切换到调试级别。然而,它似乎不起作用。

/etc/rabbitmq/rabbitmq.config以下是受官方文档启发的相关部分:

[
    {rabbit,
        [
            {log_levels, [{connection, debug}, {queue, debug}]},
            {log,
                [{file, [{level, debug}]},
                {categories,
                    [{connection,
                        [{level, debug}]
                    },
                    {queue,
                        [{level, debug}]
                    }
                    ]
                }]
            },
        ]
    }
]
Run Code Online (Sandbox Code Playgroud)

但是,我在实际日志中看到的内容(重新启动服务器后)看起来一点也不像详细日志。不仅我看到的所有消息都仅标记为INFO REPORTERROR REPORT,而且当我创建队列时,我只看到两条消息:

接受 AMQP 连接 [...]

虚拟主机 [...] 中的镜像队列 [...]:在节点 [...] 上添加镜像

这看起来并不特别冗长。

那么,如何设置 RabbitMQ 中的调试日志级别?

Ars*_*nko 9

毕竟,详细日志记录似乎并不那么详细:

3.6.x(或更早版本)中的调试日志记录非常少[...]

在大多数情况下,调试日志记录不如 Erlang 跟踪功能或流量捕获那么有用

解决方案是迁移到 RabbitMQ 3.8.3,它似乎有更多的日志。然后,可以使用新的配置格式更改日志级别:

log.file.level = debug
Run Code Online (Sandbox Code Playgroud)