我试图监控MySQL数据库:
[[email protected]〜]#su nagios -c / usr / lib / nagios / plugins / check_mysql运行时间:18014线程数:1问题:6慢速查询:0打开:12清空表:1打开表格:6每秒查询平均:0.000
但我有意想不到的错误:
[[email protected]〜] $ / usr / lib / nagios / plugins / check_nrpe -H monitored.com -c check_mysql NRPE:无法读取输出
怎么了?
debugging被执行的命令不返回任何有效输出的一个好方法是使用strace 。 例如,我刚刚通过NRPE运行check_linux_raid命令时遇到了问题。
运行strace -f -p <nrpe pid> ,然后从运行nagios的系统(例如/usr/lib64/nagios/plugins/check_nrpe -H remotename -c commandname -a arg1 arg2 ... )手动执行命令。
扫描strace的输出以查找错误,例如拒绝权限或可能发生的其他类似错误。 例如,在我的情况下,selinux在从远程机器运行时拒绝文件的权限,即使该用户对本文件具有本地访问权限。
从Nagios NRPE文档:
check_nrpe插件返回“NRPE:无法读取输出”
此错误表示由NRPE守护程序运行的命令未返回任何字符输出。 这可能是以下问题的指示:
– 命令定义中错误定义的命令行。 validation您的NRPEconfiguration文件中的命令定义是否正确。
– 命令行中指定的插件出现故障。 手动运行命令行以确保插件返回某种文本输出。