下面是我的脚本,我在其中使用jvmtop.sh脚本的输出来存储相关变量,然后在 nagios 中使用图形进行处理。
在客户端服务器 bash 中,脚本按预期输出。但是当我在 nagios 中执行测试检查命令时,似乎 ./jvmtop.sh 没有将输出存储在变量中。我收到“严重 - 监控进程未运行!”
让我知道我错过了什么..
get_vals() {
current=/usr/local/nagios/libexec/
cd $current
OLDIFS=$IFS
IFS='\n'
tmp_output=$(./jvmtop.sh --once | grep $process)
IFS=$OLDIFS
if [ -z "$tmp_output" ]
then
echo "CRITICAL - Process to monitor is not running!"
exit $ST_CR
fi
PID=`echo ${tmp_output} | awk '{print $1}'`
HPCUR=`echo ${tmp_output} | awk '{print $3}' | sed 's/.$//'`
HPMAX=`echo ${tmp_output} | awk '{print $4}' | sed 's/.$//'`
NHCUR=`echo ${tmp_output} | awk '{print $5}' | sed 's/.$//'`
NHMAX=`echo ${tmp_output} | awk '{print $6}' | sed 's/.$//'`
CPU=`echo ${tmp_output} | awk '{print $7}' | sed 's/.$//' | cut -d . -f 1`
GC=`echo ${tmp_output} | awk '{print $8}' | sed 's/.$//' | cut -d . -f 1`
THREAD=`echo ${tmp_output} | awk '{print $11}'`
}