使用 Xymon 進行系統監控/其他文件/HOWTO/自定義伺服器指令碼
外觀
伺服器端指令碼看起來幾乎和客戶端指令碼一樣,但它們通常會使用 bbhostgrep 實用程式從 bb-hosts 檔案中選出具有特殊標記定義的主機,然後為每個主機發送一條狀態訊息。像這樣
#!/bin/sh
BBHTAG=foo # What we put in bb-hosts to trigger this test
COLUMN=$BBHTAG # Name of the column, often same as tag in bb-hosts
$BBHOME/bin/bbhostgrep $BBHTAG | while read L
do
set $L # To get one line of output from bbhostgrep
HOSTIP="$1"
MACHINEDOTS="$2"
MACHINE=`echo $2 | $SED -e's/\./,/g'`
COLOR=green
MSG="$BBHTAG status for host $MACHINEDOTS"
#... do the test, perhaps modify COLOR and MSG
$BB $BBDISP "status $MACHINE.$COLUMN $COLOR `date`
${MSG}
"
done
exit 0
請注意,對於伺服器端測試,您需要遍歷 bb-hosts 檔案中找到的主機列表,併為每個主機發送一條狀態訊息。除此之外,它與客戶端測試完全相同。
此指令碼儲存在 ~/hobbit/server/ext/my_script.sh 中,您可以在 ~/hobbit/server/etc/hobbitlaunch.cfg 中新增其描述。
[foo]
ENVFILE $BBTHOME/etc/hobbitserver.cfg
CMD $BB/ext/my_script.sh
LOGFILE $BB/logs/myscript.log
INTERVAL 5m
現在可以將服務新增到 bb-hosts 檔案中
127.0.0.1 my_server # foo