一、目的
實時監控Linux服務器上的某個中間件進程,把運行到的狀態推送到監控平台。
二、思路
現有的監控平台有任務調度執行shell腳本,shell腳本只需采集運行狀態並安裝指定的json格式打印采集結果即可。一台服務器上同一進程可能有多個,不通的進程運行的不通的配置文件,實現的服務不通,采集時需要區分。
三、實現
#!/bin/sh process_name="hsserver" server_arry="ls_all,ls_auth" OLD_IFS="$IFS" IFS="," arr=($server_arry) IFS="$OLD_IFS" for s in ${arr[@]} do status=-1
#ps命令根據進程名和服務名判斷進程是否正常,正常status為0 異常status為1 ps -fe|grep $process_name|grep $s > /dev/null if [ $? -eq 0 ];then status=0 else status=1 fi echo $process_name $s status is $status done