Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何检查RabbitMQ是否;“做得好吗?”;?_Python_Ruby_Linux_Rabbitmq - Fatal编程技术网

Python 如何检查RabbitMQ是否;“做得好吗?”;?

Python 如何检查RabbitMQ是否;“做得好吗?”;?,python,ruby,linux,rabbitmq,Python,Ruby,Linux,Rabbitmq,我想构建一个脚本,每分钟在我的服务器上检查一次RabbitMQ实例。可以通过脚本(ruby、python等)或命令行检查RabbitMQ在自动模式下是否“运行良好”。通过“做得好”,它不会因为任何原因崩溃,也不会冻结 另外,如果我能够从客户端脚本(比如ruby)连接到它,这意味着“它做得很好”还是不一定?这并不意味着它做得很好。问题是“做得好”无法衡量。您需要检查排队消息总数、每秒消息数或内存消耗量。一个简单的ping不会告诉你太多。见鬼,rabbitmq作为一个erlang系统是为了崩溃和重生

我想构建一个脚本,每分钟在我的服务器上检查一次RabbitMQ实例。可以通过脚本(ruby、python等)或命令行检查RabbitMQ在自动模式下是否“运行良好”。通过“做得好”,它不会因为任何原因崩溃,也不会冻结


另外,如果我能够从客户端脚本(比如ruby)连接到它,这意味着“它做得很好”还是不一定?

这并不意味着它做得很好。问题是“做得好”无法衡量。您需要检查排队消息总数、每秒消息数或内存消耗量。一个简单的ping不会告诉你太多。见鬼,rabbitmq作为一个erlang系统是为了崩溃和重生而构建的

一旦定义了“做好”的含义,就可以创建一个脚本来命中Rabbit的API。它是简单的HTTP

API通过兔子管理插件变得可用,请参阅 一旦安装,您必须定义在应用程序上下文中做得好意味着什么。这可能是因为你的应用程序需要很长时间来处理消息。可能会出现突发消息,但必须平均处理它们的时间。这可能是因为您故意对服务器供电不足,所以您只想担心极端的内存压力。有关度量集的示例,请参见


没有一个stats值会告诉您任何服务器即将失败。您需要将Rabbit的统计数据与主机操作系统结合起来。

我已经这样做了,所以我删除了一句话。剩下的答案是正确的。