自定義監控:對上面監控的補充,可以自定義相應的監控項,在服務器上執行相應的腳本採集數據,然後調用阿里雲封裝的JDK將數據上傳,進行報警處理。
下載阿里雲的JDK到服務器相應的目錄下
http://help.aliyun.com/knowledge_detail.htm?knowledgeId=5974901
/usr/local/aegis/aegis_quartz/aegis_quartz/libexec/user
添加自定義的選項
報警規則:
這裏要注意地段後填寫的內容,這個是與上傳的字段匹配的。
然後是定義腳本:
要在/usr/local/aegis/aegis_quartz/libexec/user
#!/bin/bash
exportPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
exportVAUL=`cat /tmp/log/* | awk '/40*/{print}' | wc -l`
#exportVAUL=`cat /tmp/log/* | awk '$9>"400"{print}' | wc -l`
#exportVAUL=`cat /tmp/log/* | awk '/400|401|402|403|404/{print}' | wc -l`
exportIP=$(ifconfig eth1 | awk -F '[ :]+' '/Bcast/{print $4}')
/usr/local/aegis/aegis_quartz/libexec/user/cms_post.sh1763640468671012 apache $VAUL event=$IP
最後一條語句是調用阿里的接口上傳信息。四個參數分別是:1、服務器的aliuuid這個在添加後自定義腳本的時候回出現。
2、自定義選項的名稱; 3、監控的數值(在機器上獲取的數值);4、字段信息=字段
都是跟上面的設置是對應的。
添加計劃任務和查看
可以手動多次執行腳本,把數據送到阿里雲監控上。
然後就能在控制檯看到數據,報警是根據閥值和重試次數同時滿足時觸發事件。同時有通道沉默的概念,即觸發報警後,如果狀態沒恢復,24小時內不會再有報警的通知,恢復的時候會通知。
或者自定義腳本,不用阿里雲的cron,能夠自己定義上傳的週期,這樣更加靈活,定期執行命令向阿里的端口傳送數據。
#!/bin/bash
for iin `seq 1441`
do
DATE=`date +%d`
kill -9 `ps -ef |awk '/tail/{print $2}'` 2>/dev/null
tail -0f /var/log/httpd/access_log >>/tmp/log/$DATE$i.log &
rm -rf /tmp/log/*$[$i -2].log
for j in `seq 6`
do
export VAUL=`cat /tmp/log/* | awk'/40*/{print}' | wc -l`
/usr/local/aegis/aegis_quartz/libexec/user/cms_post.sh 1763640468671012nginx $VAUL event=123.56.170.173
sleep 60
done
done
這樣實現一分鐘上傳一次數據。
到此爲止阿里雲的監控就完事了。
或者用其他的日誌或者插件監控到相應的選項,然後將數值發送到阿里的端口進行報警。阿里雲的自定義選項就是接受一個數值 來判斷是否觸發閥值。