更改 RabbitMQ 管理插件刷新率

问题描述 投票:0回答:4

RabbitMQ 管理插件会以选定的 5、30 或 300 秒间隔自动刷新页面。 我希望它每 1 秒刷新一次。可以吗?

enter image description here

rabbitmq
4个回答
4
投票

回复为时已晚:P,但为了文档的目的,我正在回答这个问题。

您可以尝试使用管理插件进行快速破解。

步骤:

解压管理插件:

cd /usr/lib/rabbitmq/lib/rabbitmq_server-3.7.4/plugins
unzip rabbitmq_management-3.7.4.ez
cd rabbitmq_management-3.7.4

vim rabbitmq_management-3.7.4/priv/www/js/tmpl/layout.ejs

 [...]
    <option value="5000">Refresh every 5 seconds</option>    
    <option value="10000">Refresh every 10 seconds</option>
    <option value="30000">Refresh every 30 seconds</option>
    <option value="">Do not refresh</option>
[...]

使用适当的值进行编辑(在您的情况下为 1000 --> 每 1 秒刷新一次)

将旧插头移入:

cd /usr/lib/rabbitmq/lib/rabbitmq_server-3.7.4/plugins/
mv rabbitmq_management-3.7.4.ez /myhome/rabbitmq_management-3.7.4.ez

压缩插件目录

zip -r rabbitmq_management-3.7.4.ez rabbitmq_management-3.7.4

重启rabbitmq服务。

-拉胡尔 N.


1
投票

我不认为5秒可以改变。我注意到 api - http://username:password@rabbitmq_server:15672/api/queues/%2f/your_queue_name 返回的消息计数也会每 5 秒更新一次,即使您继续向它发送请求也是如此。


0
投票

我不知道为什么有人需要 1 秒分辨率,也许你应该使用 管理 HTTP API 而不是 Web 界面?

但是,从技术上来说这是可能的。您可以将某些选项值更改为 1000 并选择它,或者使用某些浏览器扩展(例如 userscript)为您的每次页面访问执行此操作。另一种方法是进入管理插件并使其在 select 中返回一个额外的选项。


0
投票

对于那些想要更改管理 UI 刷新率的人,@Rahul Nair 的答案很好。

但我想提高通过 api 获取的详细统计信息的刷新率(

/api/overview
=>
message_stats.ack
,以确保在集成测试中运行检查之前我的消息已被确认)。

我将此部分添加到文件中

/etc/rabbitmq/advanced.config

[
    {rabbitmq_management_agent, [
        {sample_retention_policies, [
            {global,[{605,5},{3660,60},{29400,600},{86400,1800}]},
            {basic,[{605,5},{3600,60}]},
            {detailed,[{605,RMQ_DETAILED_STATS_REFRESH_INTERVAL}]}
        ]}
    ]}
].

您可以将

RMQ_DETAILED_STATS_REFRESH_INTERVAL
设置为 1(不幸的是,这是最小值)而不是默认值 5。

© www.soinside.com 2019 - 2024. All rights reserved.