shell指令碼監控內嵌linux系統業務、CPU、記憶體等

來源:互聯網
上載者:User

標籤:

定製板卡中bash無法使用,使用標準sh完成對系統及業務監控

#! /bin/sh#Process_Name="/guard /aps /sa /zyguard"Process_Name="/mp /mcu"#擷取主機IP地址ip=`ifconfig eth0 |grep "inet addr"| cut -f 2 -d ":"|cut -f 1 -d " "`gstr="/guard"space=" "First_Process=""#擷取初始業務進程號for i in $Process_Namedoif [[ $i == $gstr ]]thenBf_Process=`ps |grep $i|grep -v grep|grep -v ‘/bin/bash‘|awk ‘{print $1}‘`First_Process=$First_Process$i":"$Bf_Process$spaceelseBf_Process=`ps |grep $i|grep -v grep|awk ‘{print $1}‘`First_Process=$First_Process$i":"$Bf_Process$spacefidonewhile truedoFor_num=1sleep 3Second_Process=""#第二次擷取業務進程號for i in $Process_Namedoif [[ $i == $gstr ]]thenBs_Process=`ps |grep $i|grep -v grep|grep -v ‘/bin/bash‘|awk ‘{print $1}‘`Second_Process=$Second_Process$i":"$Bs_Process$spaceelseBs_Process=`ps |grep $i|grep -v grep|awk ‘{print $1}‘`Second_Process=$Second_Process$i":"$Bs_Process$spacefidoneecho "First_Process:"$First_Processecho "Second_Process:"$Second_Process#查看所有業務進程有無變化,有變化輸出到記錄檔for j in $Process_Namedoecho $jOne_f_Process=`echo $First_Process|awk -v t="${For_num}" ‘{print $t}‘`One_s_Process=`echo $Second_Process|awk -v t="${For_num}" ‘{print $t}‘`For_num=$((For_num+1))echo "One_f_Process:"$One_f_Processecho "One_s_Process:"$One_s_Processif [[ "$One_f_Process" != "$One_s_Process" ]]thenTime_Now=`date`echo $Time_Nowecho $jecho $One_s_Processecho $One_f_Processecho -e $Time_Now"\t"$j"\tCollapse\tThe new process:"$One_s_Process"\t\tThe old process:"$One_f_Process >> /usr/tmp/$ip‘_collapse‘.txtfidone#擷取業務進程號First_Process=""for i in $Process_Namedoif [[ $i == $gstr ]]thenBf_Process=`ps |grep $i|grep -v grep|grep -v ‘/bin/bash‘|awk ‘{print $1}‘`First_Process=$First_Process$i":"$Bf_Process$spaceelseBf_Process=`ps |grep $i|grep -v grep|awk ‘{print $1}‘`First_Process=$First_Process$i":"$Bf_Process$spacefidone#系統記憶體使用量率監控Memory_Use_Rate=`free | grep Mem | awk ‘{printf"%d",$3/$2*100}‘`if [ 80 -le $Memory_Use_Rate ]thenTime_Now=`date`echo -e $Time_Now"\tSystm Memory\tMemory_Use_Rate\tAt present the use value:"$Memory_Use_Rate"%\tThreshold:80%" >> /usr/tmp/$ip‘_alarm‘.txtfi#系統CPU剩餘率監控Cpu_Residual_Rate=`mpstat|grep all|awk ‘{printf"%d",$11}‘`echo $Cpu_Residual_Rateif [ $Cpu_Residual_Rate -le 20 ]thenTime_Now=`date`echo $Time_Nowecho -e $Time_Now"\tSystm Cpu\tCpu_Residual_Rate(%idle)\tAt present the use value:"$Cpu_Residual_Rate"%\tThreshold:20%" >> /usr/tmp/$ip‘_alarm‘.txtfi#業務記憶體使用量率監控System_Memory=`free | grep Mem | awk ‘{printf"%d",$2/1024}‘`for k in $Process_Namedoif [[ $k == $gstr ]]thenProcess_Memory_Use=`ps |grep $k|grep -v grep|grep -v ‘/bin/bash‘|awk ‘{print $3}‘`var_length=${#Process_Memory_Use}var_Position=`expr $var_length - 1`m=${Process_Memory_Use:$var_Position:1}if [[ $m == "m" ]]thenPro_Mem_Use=${Process_Memory_Use:0:$var_Position}elsePro_Mem_Use=`expr $Process_Memory_Use / 1024`fiSystem_Memory_Threshold=`free | grep Mem | awk ‘{printf"%d",$2/1024*0.8}‘`if [[ $Pro_Mem_Use  -ge $System_Memory_Threshold ]]thenTime_Now=`date`echo -e $Time_Now"\t"$k"\tProcess_Memory_Use\tAt present the use value:"$Pro_Mem_Use"Mb\tThreshold:"$System_Memory_Threshold"Mb" >> /usr/tmp/$ip‘_alarm‘.txtfielseProcess_Memory_Use=`ps |grep $k|grep -v grep|awk ‘{print $3}‘`var_length=${#Process_Memory_Use}var_Position=`expr $var_length - 1`m=${Process_Memory_Use:$var_Position:1}if [[ $m == "m" ]]thenPro_Mem_Use=${Process_Memory_Use:0:$var_Position}elsePro_Mem_Use=`expr $Process_Memory_Use / 1024`fiSystem_Memory_Threshold=`free | grep Mem | awk ‘{printf"%d",$2/1024*0.8}‘`if [[ $Pro_Mem_Use  -ge $System_Memory_Threshold ]]thenTime_Now=`date`echo -e $Time_Now"\t"$k"\tProcess_Memory_Use\tAt present the use value:"$Pro_Mem_Use"Mb\tThreshold:"$System_Memory_Threshold"Mb" >> /usr/tmp/$ip‘_alarm‘.txtfifidonedone


shell指令碼監控內嵌linux系統業務、CPU、記憶體等

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.