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

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

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

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

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

          #查找當(dāng)前工作日志文件,判斷是否發(fā)生不可修復(fù)的錯(cuò)誤,若有則重啟
          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)行,若已停止,則重新啟動(dòng)
          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中定時(shí)執(zhí)行此腳本,就可以了!嘿... 這下鬧心的電話少多了,當(dāng)然不要忘記定時(shí)去看下日志哦!

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

          Feedback

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

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

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

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

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

          主站蜘蛛池模板: 自贡市| 开远市| 舒城县| 曲麻莱县| 龙里县| 临汾市| 行唐县| 枞阳县| 沙坪坝区| 新民市| 贵溪市| 眉山市| 天台县| 垫江县| 桃江县| 稻城县| 康定县| 保康县| 蒙阴县| 集贤县| 娱乐| 乃东县| 芦山县| 临清市| 灵寿县| 台江县| 上蔡县| 宁国市| 育儿| 高唐县| 密云县| 隆昌县| 鄂伦春自治旗| 茂名市| 临夏县| 昌乐县| 施甸县| 军事| 建平县| 黄浦区| 佛山市|