我已经创建了一个check_pm2.sh
脚本来检查pm2远程服务器上的状态。它在远程服务器上给出正确的输出。从监控服务器调用它时,我得到了错误的输出。请检查以下命令输出。
监控服务器:
grep check_pm2status /usr/local/nagios/etc/servers/10.10.1.80.cfg
check_command check_nrpe! check_pm2status
./check_nrpe -H 10.10.1.80 -c check_pm2status
PM2 service is not running
远程系统:
grep check_pm2status /etc/nagios/nrpe.cfg
command[check_pm2status]=/usr/lib/nagios/plugins/check_pm2.sh
/usr/lib/nagios/plugins/check_pm2.sh
PM2 Service is running
脚本如下,PM2状态0
下面脚本中声明的变量在手动运行时从监控服务器和1
远程服务器 获取输出
PM2STATUS=`pm2 status | grep online | awk '{print $10}'|wc -l`
if [ $PM2STATUS -gt 0 ];then
echo "PM2 Service is running"
exit 0
else
echo "PM2 service is not running"
exit 2
fi
答案1
以下命令与远程系统中的 nagios 用户和 root 用户的结果有什么区别?
pm2 status | grep online | awk '{print $10}'|wc -l