亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Linux Shell > 正文

Shell腳本編寫Nagios插件監控程序資源占用

2020-07-27 19:10:55
字體:
來源:轉載
供稿:網友

一般情況下,我們只需要監控程序進程在沒在就可以了。但是這次遭遇了這樣的事,公司開發的程序,程序進程還在,但是死鎖了。導致大范圍的影響,更要命的是根本不知道問題出在哪里,還是別的測試部同事幫忙發現的,真是丟盡運維的臉了…
為避免下次再遭遇到這樣的情況,分析了這次進程死鎖的現象,發現死鎖會占用100%的cpu,正常情況下只占用10%以內。決定編寫nagios插件,用來監控程序占用的資源,包括cpu,內存等。

一、shell腳本需求分析:

   能設置cpu,mem的閾值,資源占用超過閾值就報警。
   要能判斷這個進程是否存在,若有一個不存在,則報警。

二、shell腳本執行效果如下:

1、如果輸入格式不正確,則輸出幫助信息

復制代碼 代碼如下:

[root@center230 libexec]# shcomponent_resource.sh
Usage parament:
   component_resource.sh [--cpu] [--mem]
 
Example:
   component_resource.sh --cpu 50 --mem 50

2、若沒超出閾值,輸出資源占用情況,退出值為0

復制代碼 代碼如下:

[root@center230 libexec]# shcomponent_resource.sh  --cpu 50 --mem 50
VueSERVER_cpu_use=5.6% VueCache_cpu_use=1.9%VueAgent_cpu_use=0.0% VueCenter_cpu_use=0.0% VueDaemon_cpu_use=0.0%;VueSERVER_mem_use=0.2% VueCache_mem_use=7.4% VueAgent_mem_use=0.5% VueCenter_mem_use=0.1%VueDaemon_mem_use=0.0%
[root@center230 libexec]# echo $?
0

3、若超出閾值,輸出資源占用情況,退出值為2

復制代碼 代碼如下:

[root@center230 libexec]# shcomponent_resource.sh  --cpu 5 --mem 5
VueSERVER_cpu_use=9.4% VueCache_cpu_use=0.0%VueAgent_cpu_use=0.0% VueCenter_cpu_use=0.0% VueDaemon_cpu_use=0.0%;VueSERVER_mem_use=0.2% VueCache_mem_use=7.4% VueAgent_mem_use=0.5%VueCenter_mem_use=0.1% VueDaemon_mem_use=0.0%
[root@center230 libexec]# echo $?
2

4、若進程不存在,輸出down掉的進程,以及正常使用中的進程資源情況,退出值為2

復制代碼 代碼如下:

[root@yckj scripts]# sh component_resource.sh--cpu 50 --mem 50
Current VueDaemon VueCenter VueAgent VueCache VueSERVER is down.
[root@yckj scripts]# echo $?
2

三、Shell腳本代碼如下:

復制代碼 代碼如下:

[root@center230 libexec]# catcomponent_resource.sh
#!/bin/sh
#author:yangrong
#date:2014-05-20
#mail:10286460@qq.com
 
#pragrom_list=(VueDaemon VueCenter VueAgentVueCache VueSERVER VUEConnector Myswitch Slirpvde)
pragrom_list=(VueDaemon VueCenter VueAgentVueCache VueSERVER)
 
####獲取cpu閾值和mem閾值#######
case $1 in
 --cpu)
   cpu_crit=$2
  ;;
 --mem)
   mem_crit=$2
  ;;
esac
 
case $3 in
 --cpu)
   cpu_crit=$4
  ;;
 --mem)
   mem_crit=$4
  ;;
esac
 
 
 
###判斷傳參數量,如果不為4,則var值為1,var0則正常####
if [[ $1 == $3  ]];then
       var=1  
elif [ $# -ne 4 ] ;then
       var=1
else
       var=0
fi
 
 
###打印錯誤提示信息
if [ $var -eq 1 ];then
   echo "Usage parament:"
   echo "    $0 [--cpu][--mem]"
   echo ""
   echo "Example:"
   echo "    $0 --cpu 50 --mem50"
   exit
fi
 
 
###把不存在的進程放一變量中
num=$(( ${#pragrom_list[@]}-1 ))
 
NotExist=""
for digit in `seq 0 $num`
do
 a=`ps -ef|grep -v grep |grep ${pragrom_list[$digit]}|wc -l`
  if[ $a -eq 0 ];then
    NotExist="$NotExist ${pragrom_list[$digit]}"
    unset pragrom_list[$digit]
  fi
done
#echo"pragrom_list=${pragrom_list[@]}"
 
 
 
####對比進程所占資源與閾值大小
cpu_use_all=""
mem_use_all=""
compare_cpu_temp=0
compare_mem_temp=0
for n in ${pragrom_list[@]}
do
  cpu_use=`top -b -n1|grep $n|awk '{print $9}'`
  mem_use=`top -b -n1|grep $n|awk '{print $10}'`
   if[[ $cpu_use == "" ]];then
       cpu_use=0
   fi
   if[[ $mem_use == "" ]];then
       mem_use=0
   fi
 
  compare_cpu=`echo "$cpu_use > $cpu_crit"|bc`
  compare_mem=`echo "$mem_use > $mem_crit"|bc` 
   if[[ $compare_cpu == 1  ]];then
       compare_cpu_temp=1
   fi
   if[[ $compare_mem == 1  ]];then
       compare_mem_temp=1
   fi
 
  cpu_use_all="${n}_cpu_use=${cpu_use}% ${cpu_use_all}"
  mem_use_all="${n}_mem_use=${mem_use}% ${mem_use_all}"
done
 
 
###如果該變量有值,則代表有進程down。則退出值為2
if [[ "$NotExist" != ""]];then
 echo -e "Current ${NotExist} isdown.$cpu_use_all;$mem_use_all"
 exit 2
###如果cpu比較值為1,則代表有進程占用超過閾值,則退出值為2
elif [[ "$compare_cpu_temp" == 1]];then
   echo -e "$cpu_use_all;$mem_use_all"
   exit 2
 
##如果mem比較值為1,則代表為進程mem占用超過閾值,則退出值為2
elif [[ $compare_mem_temp == 1 ]];then
   echo -e "$cpu_use_all;$mem_use_all"
   exit 2
##否則則正常輸出,并輸出所占cpu與內存比例
else
   echo -e "$cpu_use_all;$mem_use_all"
   exit 0
fi

四、后話:

  隨著近日編寫shell腳本越來越多,有時難免會回改以前所寫腳本,經常要看一段時間才能看懂。
  為方便后續的維護,在腳本當中,每一個函數,每一段功能,都做備注,方便以后自己或他人來進行維護。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲免费影视第一页| 91tv亚洲精品香蕉国产一区7ujn| 亚洲欧美日韩一区二区三区在线| 国产综合色香蕉精品| 国产精品美女视频网站| 日韩不卡中文字幕| 狠狠操狠狠色综合网| 久久精品青青大伊人av| 久久精品成人欧美大片古装| 久久精品视频导航| 成人免费大片黄在线播放| 欧美性xxxxxxxxx| 国产在线高清精品| 亚洲欧洲第一视频| 日韩美女av在线免费观看| 中文字幕亚洲第一| 欧美老女人性生活| www.美女亚洲精品| 91国产中文字幕| 91在线看www| 中文字幕国产精品久久| 国产大片精品免费永久看nba| 久久全球大尺度高清视频| 欧美成人免费全部观看天天性色| 欧美激情18p| 国产69精品久久久久9| 亚洲aa在线观看| 欧美极品少妇xxxxx| 欧美一级片在线播放| 91精品在线观| 国外成人在线播放| 日韩精品极品在线观看| 日韩av在线天堂网| 亚洲欧美精品伊人久久| 精品久久久久久中文字幕大豆网| 91精品国产综合久久香蕉922| 日韩精品免费综合视频在线播放| 亚洲老头同性xxxxx| 国产一区二中文字幕在线看| 亚洲国产又黄又爽女人高潮的| 91精品国产综合久久香蕉的用户体验| 久久99久国产精品黄毛片入口| 日韩av成人在线| 欧美精品在线播放| 456亚洲影院| 日本精品视频在线| 亚洲欧美日韩高清| 欧美性猛交xxxx富婆| 国产精品18久久久久久首页狼| 欧美日韩一区二区免费在线观看| 国产日韩av在线| 国产成人精品av| 精品美女国产在线| 亚洲第一中文字幕| 亚洲精品视频在线播放| 色一情一乱一区二区| 欧美黑人视频一区| 日本成人精品在线| 亚洲女同性videos| 中文字幕免费精品一区| 日韩精品极品视频免费观看| 国产成人福利网站| 日韩中文字幕在线观看| 国产精品电影一区| 91免费看片在线| 在线成人一区二区| 岛国av午夜精品| 国产精品中文字幕久久久| 亚洲国产精品字幕| 日韩毛片在线观看| 亚洲成av人乱码色午夜| 91综合免费在线| 日韩视频一区在线| 亚洲成人在线网| 欧美日韩激情小视频| 欧美国产乱视频| 久久国产视频网站| 黑人巨大精品欧美一区二区| 国产综合久久久久| 国产日韩欧美另类| 91av视频在线| 性欧美xxxx| 久久影视免费观看| 日韩精品极品视频免费观看| 亚洲一级一级97网| 亚洲三级黄色在线观看| 国产在线观看不卡| 亚洲最大在线视频| 日韩av在线精品| 久久这里有精品视频| 黑人巨大精品欧美一区免费视频| 日本19禁啪啪免费观看www| 欧美专区在线观看| 欧美日本啪啪无遮挡网站| 黄色一区二区在线| 国产福利视频一区二区| 久久久久成人网| 中文字幕日本欧美| 精品动漫一区二区三区| 国产精品久久久久免费a∨| 久久精品电影网站| 久久99精品久久久久久青青91| 97在线观看免费| 热re99久久精品国产66热| 国产视频精品va久久久久久| 欧美xxxwww| 日韩国产欧美精品在线| 国产日韩在线亚洲字幕中文| 国产精品久久久久久一区二区| 精品亚洲aⅴ在线观看| 国产欧美日韩中文字幕| 免费91麻豆精品国产自产在线观看| 日本午夜精品理论片a级appf发布| 亚洲free性xxxx护士白浆| 国产一区二区三区在线看| 久久韩剧网电视剧| 久久这里只有精品99| 日韩精品极品视频免费观看| 久久精品视频免费播放| 国产精品亚洲片夜色在线| 北条麻妃一区二区三区中文字幕| 精品久久久久久久久中文字幕| 色中色综合影院手机版在线观看| 欧美亚洲日本黄色| 国产精品美腿一区在线看| 中文字幕亚洲第一| 国产精品美女无圣光视频| 久久久视频在线| 2019国产精品自在线拍国产不卡| 亚洲成人久久久久| 777精品视频| 久久av在线看| 中文字幕视频在线免费欧美日韩综合在线看| 国产精品视频免费观看www| 69精品小视频| 日韩在线视频中文字幕| 久久久久久12| 亚洲视频专区在线| 欧美成人在线网站| 精品免费在线视频| 国产精品免费网站| 欧美成人精品在线观看| 欧美日韩视频在线| 91精品国产色综合久久不卡98| 久久亚洲私人国产精品va| 国产91露脸中文字幕在线| 欧美一级电影久久| 色综合色综合久久综合频道88| 97久久久免费福利网址| 亚洲欧美国产精品久久久久久久| 另类美女黄大片| 另类专区欧美制服同性| 中文国产亚洲喷潮| 日韩欧美成人区| 亚洲欧美日韩爽爽影院| 精品免费在线观看| 黄色成人在线播放| 成人有码在线视频| 亚洲综合中文字幕在线观看| 美日韩精品免费观看视频| 国产最新精品视频| 国产精品成人免费视频| 欧美日韩国产色| 欧美日韩xxx|