监控rabbitmq以确保一切运行顺利的最佳方法是什么?

时间:2011-03-09 18:49:58

标签: rabbitmq

很多次,我得到了:

-Frozen,加载到5.0。不能用我的盒子。 - 只是不起作用。

5 个答案:

答案 0 :(得分:15)

正如sheki所说,rabbitmqctl是您诊断和建立监控的第一个停靠点,但它不适合直接作为手动命令行进行实际监控。

我发现DataDog非常适合监视MQ细节以及并行的主机平台。例如您可以查看队列级别并在队列备份时设置警报,同时还可以查看这些队列级别造成的CPU /内存/ IO。它确实有助于获得资源使用率,并且警报很好。拥有统一的基础架构和应用程序级别监控平台的情况非常罕见,但却大大加快了生产问题的诊断速度。

NewRelic类似,也有RabbitMQ plugin,虽然我没有专门使用过此插件,但我已经使用NR多年,并发现它在诊断操作问题方面具有无可估量的价值。

AppDynamics是另一个例子。同样,这允许您从高级仪表板深入查看应用程序,并直观地从问题导航到原因。通过在各种服务/服务器上可视化分布式应用程序的网络,它尤其出色。例如,我使用它来查找使用第三方Web服务的.NET应用程序和SQL Server群集中的复杂问题(例如延迟及其对应用程序通过繁琐协议的影响)。这些事情很难诊断,特别是对于那些仅限于检查代码的开发人员。诊断运营问题需要更广泛的视野。

我放弃了尝试甚至安装和配置Nagios。我知道它是“最好的”,但它是我们没有时间管理的旧式自我配置的野兽中最好的。我甚至没有得到它...并最终转向更“现代”的云方法。一旦你克服了信任因素,它就会非常自由。

我正在使用这些APM平台*汇总来自:

的数据
  • Windows O / S级别事件日志/服务
  • Linux O / S级别
  • AWS控制台级别
  • RDS,EC2
  • 的Apache
  • MySQL的
  • 我编写的应用程序集成/自定义NR插件
  • Rabbit MQ

* NewRelic可以输入Datadog!因此,如果您已经在使用NR,则也不需要在这些主机上安装DD。

能够一起查看所有这些级别,您可以在一个仪表板中查看发布者,中间件,MQ服务器,工作人员和前端应用程序。

我强烈推荐这样的方法,因为只看一台服务器就会引起很大的麻烦。在一个可自定义的仪表板中查看整个堆栈就是如此有启发性,它可以消除大部分的猜测。

担心安装这些东西?我发现New Relic特别轻盈且不引人注目。 AppDynamics似乎更多地强调主机,但主要是因为你必须在主机上运行可视化工具! (这可能已经改变了)。 DataDog看起来很高效,但在目标主机上创建了很多控制面板/图标(可能只是一个视觉印象)。

对于一个四年前的问题 - 这个答案可能在2011年没有提供,但在2015年,这些曾经'启动'式的APM服务每月只需数十或数百美元就可以实现令人难以置信的丰富企业级解决方案。

答案 1 :(得分:10)

执行以下步骤:

1.rabbitmq-plugins启用rabbitmq_management

2.service rabbitmq-server restart

3.浏览http://rabbitmq-server-ip:15672

4.登录

username: guest
password: guest

请勿忘记稍后更改密码。

答案 2 :(得分:9)

有许多RabbitMQ监控插件可用于不同的监控系统,如Nagios,Zabbix等。 看看http://www.rabbitmq.com/how.html#management 使用rabbitmqctl是检查节点状态的最直接的解决方案。

$ rabbitmqctl status

这应该告诉你RabbitMQ节点的状态。

答案 3 :(得分:5)

如果您有PRTG(或任何带有HTTP传感器检查的探测系统),您可以检查以下页面中描述的服务器状态: https://blog.cdemi.io/monitoring-rabbitmq-in-prtg/

特别是你必须

  

启用管理插件   rabbitmq-management插件提供基于HTTP的API,用于管理和监控Rab​​bitMQ   服务器,以及基于浏览器的UI和命令行工具,   rabbitmqadmin。管理插件包含在RabbitMQ中   分配。要启用它,我们需要运行:rabbitmq-plugins enable   RabbitMQ节点上的rabbitmq_management。有关详细信息   管理插件参考RabbitMQ文档。

     

网页用户界面位于:http://server-name:15672/ HTTP API和   其文档均位于:http://server-name:15672/api/

完成后,您可以使用API​​检查服务器的概述:

http://server-name:15672/api/overview

你有一个JSON,其中包含有关服务器,活动连接,队列等的所有详细信息。

答案 4 :(得分:-2)

此cmd将帮助您service rabbitmq-server status 或者尝试这些service rabbitmq-server stopservice rabbitmq-server start,然后再尝试service rabbitmq-server status