spark的自留地(ofbiz/eclipse rcp/shark/opentaps)

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            54 Posts :: 0 Stories :: 112 Comments :: 0 Trackbacks

          兄弟們不知道是否有被要求24小時不允許關(guān)機(jī)的痛苦經(jīng)歷,有時半夜正在做著美夢卻被客戶或老板抓起來一通臭罵,服務(wù)器怎么回事down了,網(wǎng)站訪問不了... 唉,真是痛不欲生呀!

          經(jīng)歷過N次折磨后,我下定決心要改變這種情況,想一下,也許我可以寫個crontab來監(jiān)控程序的運(yùn)行情況,如果服務(wù)停止或發(fā)生了不可修復(fù)的錯誤時,自動重啟服務(wù)器,這樣我就不用擔(dān)心半夜被人抓起來罵了。

          說動手就動手,雖說我linux/unix腳本不是很熟,但我想應(yīng)該也難不到我,左瞧瞧右看看,拼出了一個腳本,給大家參考下,大家可以修改下路徑與端口適應(yīng)自己的程序:

          #查找當(dāng)前工作日志文件,判斷是否發(fā)生不可修復(fù)的錯誤,若有則重啟
          LOG
          =`ls /workdir/server-*.log -lrt |tail -1`
          ERROR_NUM
          =`cat $LOG | grep java.lang.OutOfMemoryError | wc -l`
          if [ $ERROR_NUM -ne 0 ];then
                  echo 
          "found $ERROR_NUM times at $LOG"
                  kill 
          -9 `netstat -anp|grep :::8080 | awk '{print substr($7,1,index($7,"/java")-1)}'`
                  cd 
          /workdir;exec startserver.sh
                  exit
          fi
          #檢查當(dāng)前服務(wù)是否還在運(yùn)行,若已停止,則重新啟動
          PROCESS_NUM
          =`netstat -anp|grep :::8080 | awk '{print substr($7,1,index($7,"/java")-1)}' | wc -l`
          if [ $PROCESS_NUM -eq 0 ];
          then
                  cd 
          /workdir;exec startserver.sh
          fi

          然后在crontab中定時執(zhí)行此腳本,就可以了!嘿... 這下鬧心的電話少多了,當(dāng)然不要忘記定時去看下日志哦!

          本人原創(chuàng)文章,轉(zhuǎn)載請注明出處!
          posted on 2008-12-10 16:54 shanghai_spark 閱讀(2243) 評論(3)  編輯  收藏 所屬分類: linux

          Feedback

          # re: 寫個crontab監(jiān)控程序進(jìn)程,讓自己睡個好覺! 2008-12-10 19:47 隨便說說
          好辦法,在WINDOWS下也可以寫一個守護(hù)進(jìn)程。
          最根本可能還是系統(tǒng)有問題。。。

          :##¥  回復(fù)  更多評論
            

          # re: 寫個crontab監(jiān)控程序進(jìn)程,讓自己睡個好覺! 2008-12-11 13:45 天一
          這個做法是不錯,但能拿到信息比較小;而且都是單單服務(wù)信息。
          這個應(yīng)該有一個完整監(jiān)控流程。

          但還是謝謝分享。  回復(fù)  更多評論
            

          # re: 寫個crontab監(jiān)控程序進(jìn)程,讓自己睡個好覺! 2008-12-13 18:30 戴爾筆記本
          這個做法是不錯  回復(fù)  更多評論
            

          主站蜘蛛池模板: 蛟河市| 鄂托克前旗| 子洲县| 库车县| 遵义市| 民勤县| 城步| 台北市| 宜兴市| 来宾市| 定安县| 扶沟县| 铜山县| 册亨县| 临海市| 通州区| 沐川县| 科技| 宜昌市| 漾濞| 东海县| 普定县| 青龙| 许昌市| 金阳县| 嘉义县| 迁西县| 永修县| 宁津县| 龙里县| 兴海县| 靖边县| 阿坝| 中超| 岐山县| 织金县| 九江市| 榆社县| 青海省| 来宾市| 汪清县|