基于RabbitMQ文件大小的日志旋转默认大小
我是RabbitMQ新手,我有一个应用程序使用RabbitMQ作为消息代理。直到今天,我一直在使用默认设置-无日志旋转。我想使用日志旋转功能,因此我使用以下设置:基于RabbitMQ文件大小的日志旋转默认大小,rabbitmq,Rabbitmq,我是RabbitMQ新手,我有一个应用程序使用RabbitMQ作为消息代理。直到今天,我一直在使用默认设置-无日志旋转。我想使用日志旋转功能,因此我使用以下设置: {log, [ {file, [{file, "MyAppLogs.log"}, {level, info}, {date, "$D0"}, {size, 1073741824},
{log, [
{file, [{file, "MyAppLogs.log"},
{level, info},
{date, "$D0"},
{size, 1073741824},
{count, 30}
]}
]}
当然,如果我要测试1GB的文件大小,测试需要一段时间,所以为了测试的目的,我将它改为1024。我期望日志在达到1KB时会旋转,但它没有。我注意到日志文件只有在文件大小达到5KB时才会旋转。
所以我的问题是-RabbitMQ基于文件的日志循环的最小日志文件大小是5KB吗?
我环顾了整个网络,尤其是rabbitmq文档站点:-但是没有提到任何最小大小。
以下是我使用的设置的示例输出:
测试设置:
[{file, [{file, "rabbit.log"},
{level, info},
{date, "$D0"},
{size, 1024},
{count, 3}
]}
]}
这需要rabbitmq版本>3.7。将日志旋转逻辑放入
rabbitmq.conf
文件中,如下所示:
{log[
{file,[{file,“/var/log/rabbitmq/rabbitmq.log”},%%log.file
{level,info},%%log.file.info
{date,“$D0”},%%log.file.rotation.date
{size,1024},%%log.file.rotation.size
{count,15}%%log.file.rotation.count
]}
]},
你好,Renya
请始终让我们知道您使用的RabbitMQ和Erlang的版本。我可以告诉你正在使用Windows-什么版本
日志旋转不一定精确,因为它发生在日志记录过程中的时间以及缓冲区
谢谢-
卢克
注意:RabbitMQ团队监控
RabbitMQ用户
,有时只回答有关StackOverflow的问题。如果我的问题不清楚,我很抱歉-但是是的,我将逻辑放在了RabbitMQ.conf文件中。但是,即使我将日志文件大小设置为1KB,它也不会旋转-它会以5KB的速度旋转。所以我的问题是,这是一个隐含的最小日志文件大小吗?您使用的是哪个版本的RabbitMQ
?这不应该发生。他们的文档没有提到任何关于5kb限制的内容。我使用的是RMQ 3.8.2。我添加了一个屏幕截图,显示了在循环期间创建的日志文件。文件大小与1KB设置不一致。我希望所有轮换的文件至少都是1KB左右的文件。我在rabbitmq用户邮件列表中回答了这个问题-但为了其他读者的利益,我使用的是Windows Server 2016和rabbitmq 3.8.2。我确信这可能是日志过程加上缓冲造成的。将日志文件大小设置为1MB左右会产生更可预测的结果。我将把你的答案作为我问题的答案。非常感谢。