阿里云ECS主机自定义进程监控
生活随笔
收集整理的這篇文章主要介紹了
阿里云ECS主机自定义进程监控
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
由于業務的關系我們用的是阿里云的ECS主機,需要對業務進程需要監控,查看后發現阿里云提供自定義監控SDK,這有助于我們定制化的根據自身業務來做監控,下面我就根據業務需求來介紹一個簡單的自定義監控配置
| 1 2 | PYTHON腳本下載地址:http://imgs-storage.cdn.aliyuncs.com/help/jiankong/cms_post.sh?spm=5176.7738831.2.2.bELgkj&file=cms_post.sh shell腳本下載地址:http://imgs-storage.cdn.aliyuncs.com/help/jiankong/cms_post.sh?spm=5176.7738831.2.2.bELgkj&file=cms_post.sh |
備注:我用的shell腳本用來部署的
業務需求:我們需要監控ECS服務器中某個進程是否存在,如果小于1,就說明進程關閉,然后根據設定的報警規則報警。
自定義選項
備注:腳本post方法說明
a.命名空間中的數字串,即是用戶的aliuid
b. 監控項名稱,即是用戶創建監控項時填寫的名稱
c. 字段信息,結合監控項,表示具體業務字段的實際意義。?
腳本分析:
vim dubbo_check.sh
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | #!/bin/bash #-------------------------------------------- #PATH用來獲取運行命令的路徑 export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/java/bin #VAUL用來獲取監控存活數值或狀態 export VAUL=$(ps?-ef |grep mysql |grep?-w?'usr\/local/mysql\/bin\/mysqld'?|grep?-v?'grep'|awk?'{print $2}'?|wc?-l) # HOSTS用來獲取你的主機名 export HOSTS=$(hostname) #1腳本位置 #2命名空間中的數字串-即是用戶的aliuid #3即是用戶創建監控項時填寫的名稱 #4字段信息結合監控項,表示具體業務字段的實際意義 #這里需要注意,字段的值一定要與腳本中字段的值一致,否則即使監控的值觸發了你的報警規則,狀態依然是正常的。(我用的字段信息是主機名,因為我的業務和主機名是一樣的,hosts后面的是那個業務報警的狀態,自己定義的) # 1 2 3 4 /usr/local/cloudmonitor/script/cms_post.sh?1421981683758115?test_web $VAUL dubbo=$HOSTS-dubbo-stop |
賦予權限
| 1 2 3 | chmod?777?/usr/local/cloudmonitor/script/cms_post.sh chmod?777?/usr/local/cloudmonitor/script/dubbo_chenk.sh |
cloudmonitor監控:
腳本上傳到任意位置即可,我放在 /usr/local/cloudmonitor/script/ (script需要自己建立)cloudmonitor進程如果沒有安裝或啟動是收集不到的。
增加定時任務每分鐘執行一次,這個和上面的上報頻率要保持一致
| 1 | *?*?*?*?*?/bin/bash?/usr/local/cloudmonitor/script/tomcat_dubbo_check.sh >/dev/null?2>&1 |
/etc/init.d/crond restart
報警規則:
報警結果
?這個時候你的手機、釘釘、旺旺、郵件、就都收到報警信息了。
轉載于:https://www.cnblogs.com/heidsoft/p/7697890.html
總結
以上是生活随笔為你收集整理的阿里云ECS主机自定义进程监控的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python startswith()
- 下一篇: 解决ftp限制用户访问上层目录后无法登陆