confluence服務守護指令碼

2021-09-29 22:20:13 字數 2071 閱讀 7537

使用shell指令碼實現對confluence服務健康狀況的監控,並在服務掛掉時,及時重新啟動服務

#!/bin/bash

#create by kjl

#2019-11-22

#引數ip=172.20.**.**

port=9090

logfile=/home/work/confluence/data/wiki_check.log

confluence_log=/home/work/confluence/atlassian-confluence-5.6.5/logs

sleep_time=60

#釘釘phone=138*********

url=

message()

#返回狀態碼檢查

returnnode_check() $ip:$port` -lt 400 ]];then

#如果切換到work使用者執行,服務內部有錯,拿到的狀態嗎是500000

let right_times++

fisleep $per_time

done

}#程序埠檢查,heal_num為1表示程序或埠出問題,為0表示均正常

pp_check()

#死迴圈

while [[ true ]];do

sleep $sleep_time

now_date=$(date "+%y-%m-%d")

now_time=$(date "+%y-%m-%d %h:%m:%s")

#首次檢查

returnnode_check

pp_check

if [[ $right_times -lt 3 || $heal_num -eq 1 ]];then

#觸發重啟

#釘釘通知服務異常

#message "ding~服務異常,正在嘗試重啟..."

echo $now_time"**********服務異常,嘗試重啟...*************" >>$logfile

pid=`ps aux |grep 'confluence' |grep -v grep |grep -v 'wiki_check' | awk ''`

if [[ -n $ ]]; then

kill -9 $

ficp -a $confluence_log/catalina.out $confluence_log/catalina.$now_date.log && echo '' > $confluence_log/catalina.out

/home/work/confluence/atlassian-confluence-5.6.5/bin/start-confluence.sh"

#日誌中可以捕捉到「info: server startup in」資訊,但是狀態嗎不對

else

echo $now_time"**********服務健康狀況正常*************">>$logfile

continue

fi

i=0while [[ $i -lt 60 ]]; do

grep 'info: server startup in' $confluence_log/catalina.out

if [[ $? -eq 0 ]];then

break

filet i++

sleep 10

done

#再次複核

returnnode_check

pp_check

if [[ $right_times -lt 3 || $heal_num -eq 1 ]];then

#重啟後服務仍未恢復

#釘釘通知人工處理

message "ding~wiki服務重啟失敗,請盡快排查問題"

echo $now_time"**********服務重啟失敗*************">>$logfile

else

echo $now_time"**********服務重啟成功*************">>$logfile

fidone

linux利用shell實現守護程序的指令碼

在遊戲開發領域,伺服器宕機那是家常便飯。本文簡單介紹如何利用linux的shell指令碼實現簡單的守護程序。bin sh 新增本地執行路徑 export ld library path while true do 啟動乙個迴圈,定時檢查程序是否存在 server ps aux grep center...

linux利用shell實現守護程序的指令碼

原 2016年07月26日 15 13 03 簾捲西風 閱讀數 12466 標籤 shell 伺服器 遊戲開發 linux 守護程序 更多 個人分類 遊戲開發 系統運維 所屬專欄 遊戲伺服器開發專欄 在遊戲開發領域,伺服器宕機那是家常便飯。本文簡單介紹如何利用linux的shell指令碼實現簡單的守...

Linux Nginx服務守護監控

由於nginx的出色表現,越來越多的web伺服器採用nginx。雖然nginx很棒,但萬一掛了呢?我們最好寫個小腳本來監控。如果nginx掛了,系統自動重啟。當然,在給出指令碼之前,先做幾個假設,nginx的目錄是 usr local nginx 其pid conf 分別為在相應預設目錄之下。例項指...