欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

shell腳本實(shí)現(xiàn)定時(shí)檢查應(yīng)用狀態(tài)步驟

 更新時(shí)間:2023年08月09日 11:38:46   作者:KenDoEverthing  
這篇文章主要為大家介紹了shell腳本實(shí)現(xiàn)定時(shí)檢查應(yīng)用狀態(tài)步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

引言

有時(shí)候,我們掛在服務(wù)器上的應(yīng)用會(huì)因?yàn)橐恍┨厥馇闆r掛掉,致使項(xiàng)目經(jīng)理又對(duì)我們說(shuō):又掛了!趕緊去看看!
于是有了以下腳本,使用shellll編寫(xiě),用于定時(shí)檢查應(yīng)用情況,掛掉則重啟。 這里以tomcat為例。

步驟

根據(jù)以下步驟即可實(shí)現(xiàn):

1.創(chuàng)建并編輯腳本

vim test.sh

2.復(fù)制以下腳本內(nèi)容至.sh文件中

#自動(dòng)檢測(cè)某個(gè)tomcat狀態(tài)(w精確匹配 v去除某種進(jìn)程 awk數(shù)據(jù)處理  print $2 打印第二列)
TomcatID=$(ps -ef |grep -w 'apache-tomcat-7.0.81'|grep -v 'grep'|awk '{print $2}')
# tomcat啟動(dòng)程序(這里注意tomcat實(shí)際安裝的路徑)  
StartTomcat=/usr/local/apache-tomcat-7.0.81/bin/startup.sh  
TomcatCache=/usr/local/apache-tomcat-7.0.81/work
# 定義要監(jiān)控的頁(yè)面地址,建議跟上具體項(xiàng)目xxx  ,建議 具體到某個(gè)頁(yè)面或接口
TomcatUrl=http://localhost:8080
# 日志輸出,根據(jù)實(shí)際情況設(shè)置路徑,并創(chuàng)建文本
#頁(yè)面日志
GetPageInfo=/usr/local/zhangwk/logs/tomcatMonitorPage.info  
#tomcat進(jìn)程日志
TomcatMonitorLog=/usr/local/zhangwk/logs/tomcatMonitor.log
MonitorTomcat()  
 {  
   echo "[info]開(kāi)始監(jiān)控tomcat...[$(date +'%F %H:%M:%S')]"  
   if [ $TomcatID ];then  # 這里判斷TOMCAT進(jìn)程是否存在  
      echo "[info]當(dāng)前tomcat進(jìn)程ID為:$TomcatID,繼續(xù)檢測(cè)頁(yè)面..."  
      # 檢測(cè)是否啟動(dòng)成功(成功的話頁(yè)面會(huì)返回狀態(tài)"200")  
      TomcatServiceCode=$(curl -s -o $GetPageInfo -m 10 --connect-timeout 10 $TomcatUrl -w %{http_code})  
      if [ $TomcatServiceCode -eq 200 ];then  
         echo "[info]頁(yè)面返回碼為$TomcatServiceCode,tomcat啟動(dòng)成功,測(cè)試頁(yè)面正常......"  
      else  
         echo "[error]tomcat頁(yè)面出錯(cuò),請(qǐng)注意......狀態(tài)碼為$TomcatServiceCode,錯(cuò)誤日志已輸出到$GetPageInfo"  
         echo "[error]頁(yè)面訪問(wèn)出錯(cuò),開(kāi)始重啟tomcat"  
         kill -9 $TomcatID   # 殺掉原tomcat進(jìn)程  
         sleep 3  
         rm -rf $TomcatCache # 清理tomcat緩存  
         $StartTomcat  # 啟動(dòng)tomcat
      fi  
   else  
      echo "[error]tomcat進(jìn)程不存在!tomcat開(kāi)始自動(dòng)重啟..."  
      echo "[info]$StartTomcat,請(qǐng)稍候......"  
      rm -rf $TomcatCache  # 清理tomcat緩存
      $StartTomcat   # 啟動(dòng)tomcat
   fi  
   echo "------------------------------"
 }  
MonitorTomcat >>$TomcatMonitorLog

3.對(duì)該腳本賦予執(zhí)行權(quán)限

chmod +x test.sh

4.測(cè)試腳本是否報(bào)錯(cuò)

sh test.sh

若無(wú)任何輸出,則說(shuō)明該腳本無(wú)錯(cuò)誤

5.設(shè)置linux定時(shí)器

進(jìn)入定時(shí)器編輯

crontab -e

添加以下文本

*/5 * * * * /usr/local/zhangwk/test.sh

保存退出

注:根據(jù)腳本實(shí)際路徑填寫(xiě),這里的意思是每隔五分鐘執(zhí)行一次

以上就是shell腳本實(shí)現(xiàn)定時(shí)檢查應(yīng)用狀態(tài)的詳細(xì)內(nèi)容,更多關(guān)于shell腳本定時(shí)檢查應(yīng)用狀態(tài)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 復(fù)制 Windows cmd 窗口命令行的信息方法

    復(fù)制 Windows cmd 窗口命令行的信息方法

    下面小編就為大家?guī)?lái)一篇復(fù)制 Windows cmd 窗口命令行的信息方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-02-02
  • shell腳本實(shí)現(xiàn)輸入密碼顯示星號(hào)

    shell腳本實(shí)現(xiàn)輸入密碼顯示星號(hào)

    本文給大家分享使用shell腳本實(shí)現(xiàn)輸入密碼顯示星號(hào)的腳本寫(xiě)法,在文章末尾給大家補(bǔ)充了shell輸入密碼時(shí)關(guān)閉屏幕回顯的實(shí)現(xiàn)方法,需要的朋友參考下吧
    2017-01-01
  • shell中if-then的高級(jí)使用

    shell中if-then的高級(jí)使用

    在Shell腳本編程中,if-then語(yǔ)句是基本的邏輯控制結(jié)構(gòu),用于根據(jù)條件執(zhí)行代碼,本文介紹了if-then的基本語(yǔ)法、條件表達(dá)式、使用單雙括號(hào)的區(qū)別及高級(jí)特性,感興趣的可以了解一下
    2024-11-11
  • 在Linux中重命名文件和目錄的幾種方法

    在Linux中重命名文件和目錄的幾種方法

    在這篇基本命令行教程中,你將學(xué)習(xí)在 Linux 終端重命名文件和目錄的各種方法,文中通過(guò)代碼示例講解非常詳細(xì),對(duì)學(xué)習(xí)Linux重命名文件和目錄非常有幫助,需要的朋友跟著小編一起來(lái)學(xué)習(xí)吧
    2024-01-01
  • linux shell中單引號(hào)、雙引號(hào)、反引號(hào)、反斜杠的區(qū)別

    linux shell中單引號(hào)、雙引號(hào)、反引號(hào)、反斜杠的區(qū)別

    shell可以識(shí)別4種不同類型的引字符號(hào): 單引號(hào)字符' 雙引號(hào)字符" 反斜杠字符\ 反引號(hào)字符`的區(qū)別,學(xué)習(xí)shell編程的朋友可以看下
    2013-01-01
  • Shell中的for和while循環(huán)詳細(xì)總結(jié)

    Shell中的for和while循環(huán)詳細(xì)總結(jié)

    這篇文章主要介紹了Shell中的for和while循環(huán)詳細(xì)總結(jié),本文講解了for循環(huán)的數(shù)字段形式、詳細(xì)列出、對(duì)文件進(jìn)行循環(huán),while循環(huán)的三種使用場(chǎng)合等內(nèi)容,需要的朋友可以參考下
    2015-05-05
  • Shell腳本實(shí)現(xiàn)隨機(jī)數(shù)多種方法介紹(date、random、uuid)

    Shell腳本實(shí)現(xiàn)隨機(jī)數(shù)多種方法介紹(date、random、uuid)

    這篇文章主要介紹了Shell腳本實(shí)現(xiàn)隨機(jī)數(shù)多種方法介紹,本文講解了通過(guò)時(shí)間獲得隨機(jī)數(shù)、通過(guò)內(nèi)部系統(tǒng)變量、通過(guò)系統(tǒng)內(nèi)部唯一數(shù)據(jù)生成隨機(jī)數(shù)等方法,需要的朋友可以參考下
    2014-11-11
  • Linux中shell腳本的jq命令用法詳解

    Linux中shell腳本的jq命令用法詳解

    這篇文章主要介紹了Linux中shell腳本的jq命令用法詳解,?jq是一個(gè)輕量級(jí)的命令行JSON處理工具,用于解析、過(guò)濾、修改和操作JSON數(shù)據(jù),它提供了一種簡(jiǎn)潔和靈活的方式來(lái)處理JSON數(shù)據(jù),可以與其他命令行工具結(jié)合使用,需要的朋友可以參考下
    2023-07-07
  • 詳解systemctl?和?service?區(qū)別及命令

    詳解systemctl?和?service?區(qū)別及命令

    systemctl和service都是管理Linux系統(tǒng)服務(wù)的工具,但systemctl更加先進(jìn),可以方便地管理systemd服務(wù),而service適用于管理傳統(tǒng)的SysV服務(wù),這篇文章主要介紹了systemctl和service區(qū)別及命令,需要的朋友可以參考下
    2023-07-07
  • linux 網(wǎng)卡配置詳解及實(shí)例

    linux 網(wǎng)卡配置詳解及實(shí)例

    這篇文章主要介紹了linux 網(wǎng)卡配置詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-05-05

最新評(píng)論