在演示中 领事 </跨度> ,检查磁盘利用率和内存利用率。
http://demo.consul.io/ui/#/ams2/nodes/ams2-server-1
你怎么能写一个配置来做演示
警告状态的退出代码应为1,对于严重,2或更高。 (参见“检查脚本”) https://www.consul.io/docs/agent/checks.html ),所以你可能想要换掉退出线。
您的“OK”状态(磁盘使用率<80%)不提供任何输出,这很可能是您看到空白输出的原因。
我的第二个概念是使用nagios插件而不是自己动手。许多操作系统都有一个nagios-plugins软件包,它们是yum / apt安装的。
健康检查依赖于支票的退出代码。要测试Consul服务器是否正在读取运行状况检查,您可以编写一个始终以1退出的脚本,然后您将看到运行状况检查失败。然后用一个总是返回0的脚本替换它,你应该看到传递的运行状况检查。
如果要将文本返回到ui,请添加 产量 领域到json。
你的检查json文件看起来像这样:
{ "check": { "name": "disks", "notes": "Critical 5%, warning 10% free", "script": "/path/to/check_disk -w 10% -c 5%", "interval": "2m" } }
这似乎是consul分析 stdout 只是而不是 stderr 。我已经测试了重定向( 的 2>&1 强> )在服务检查文件配置中。这似乎工作!
stdout
stderr
2>&1
的 JSON配置 强>
{ "check": { "name": "disks", "notes": "Critical 5%, warning 10% free", "script": "/path/to/check_disk -w 10% -c 5% 2>&1", "interval": "2m" } }
的 输出结果 强>