shell寫的警示次數控制及恢複範例程式碼_linux shell

來源:互聯網
上載者:User
俺也是新手,寫的有點老土,權當練手了,供初學的朋友們參考吧。
複製代碼 代碼如下:

#!/bin/bash
if [ $succ_ping -gt $((ping_count-1)) ];then
if [ -f ./alarm_file/alarm_$host ];then
  rm -rf ./alarm_file/alarm_$host
  #發送故障消除簡訊通知--調用insert_table
  messages="$host伺服器通迅恢複正常`date "+%Y%m%d %H:%M:%S"`"
  echo "$messages" >>./log/ping_err_recover.log
  insert_table
else
  echo "本次檢測結果---->$host伺服器ping檢測正常"
  echo "`date "+%Y%m%d %H:%M:%S"`--->$host伺服器ping檢測正常,ping次數$ping_count,接收$succ_ping" >>./log/ping_log
fi
else
  echo "本次檢測結果---->$host伺服器有丟包現象,丟包率為:$loss_ping"
  messages="`date "+%Y%m%d %H:%M:%S"`--->$host伺服器有丟包現象,丟包率為:$loss_ping"
  #對警次數進行處理,超過2次將不警示
  #格式host a(警示次數)
  #已經出現警示的次數加1
  echo "警示伺服器為$host"
  if [ -f ./alarm_file/alarm_$host ];then
     #取出當前的警示次數並加1
     a=`awk '{print$2}' ./alarm_file/alarm_$host`
     b=$(($a+1))
     echo "$host $b" >./alarm_file/alarm_$host
     alarm_count=`awk '{print$2}' ./alarm_file/alarm_$host`
       if [ $alarm_count -gt $sms_count ];then
          echo "超過2次不傳送簡訊"
          echo "`date "+%Y%m%d %H:%M:%S"`--->$host伺服器有丟包現象,接收$succ_ping,丟包率為:$loss_ping,超過二次不發送。" >>./log/ping_err_log
      else
          #未超過2次調用insert_table函數傳送簡訊
          echo "未超過2次"
          echo "`date "+%Y%m%d %H:%M:%S"`--->$host伺服器有丟包現象,接收$succ_ping,丟包率為:$loss_ping">>./log/ping_err_log
          insert_table
      fi
  else
   #第一次警示
   echo "第一次警示"
   echo "$host 1" >./alarm_file/alarm_$host
   insert_table
   echo "`date "+%Y%m%d %H:%M:%S"`--->$host伺服器有丟包現象,接收$succ_ping,丟包率為:$loss_ping" >>./log/ping_err_log
  fi
fi
done
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.