用Python寫個程序監控程式

2021-03-31 08:56:31 字數 1003 閱讀 1072

有個應用程式不是很穩定,又暫時找到具體問題,只知道出現錯誤時日誌檔案會反映出來.

該應用定時更新日誌目錄,有兩個日誌檔案:fromclient.log 記錄接收請求,fromserver.log記錄接收服務端返回.

出現問題時一般是fromclient.log日誌在更新,但是fromserver.log就停止了.

靈機一動,何不用python寫個監控日誌的程式,發現程式異常就自動重啟,這樣不至於嚴重影響客戶使用.

多出時間來徹底解決問題.

於是就有了下面的**:

#!/bin/env python

# -*- coding: cp936 -*-

import glob,os,time,stat,sys

deadflag = 60   #判斷程序死掉的秒數

def getfiletime(filename):

return os.stat(filename)[stat.st_ctime]

def main():

path = glob.glob("../log/proxy*")[-1]

clifile = path + "/" + "mt.log"

svrfile = path + "/" + "fromserver.log"

clitime = getfiletime(clifile)

svrtime = getfiletime(svrfile)

print clifile,time.localtime(clitime)

print svrfile,time.localtime(svrtime)

if abs(svrtime-clitime) > deadflag:

print "time is over! will restart!"

os.system("sh /home/e**/bin/restart_tcpproxy.sh")

return

if __name__ == "__main__":

main()

用Python寫個程序監控程式

有個應用程式不是很穩定,又暫時找到具體問題,只知道出現錯誤時日誌檔案會反映出來.該應用定時更新日誌目錄,有兩個日誌檔案 fromclient.log 記錄接收請求,fromserver.log記錄接收服務端返回.出現問題時一般是fromclient.log日誌在更新,但是fromserver.log...

用python寫個翻譯小指令碼

想法 有的時候,想開始一個專案,但是在給專案起一個合適的英文名的時候突然被英語詞彙量攔住了,怎麼辦?那就開啟瀏覽器搜個翻譯軟體查詢咯,但是這樣過程略顯繁瑣,想著自己寫個小指令碼,要用的時候直接命令列敲就行了。也不用再開啟一個瀏覽器那麼多步驟了。說幹就幹。設計 執行在命令列如這種形式 python3 ...

用python寫個歌詞解析程式

import time musiclrc 00 03.50 傳奇 00 19.10 作詞 劉兵 作曲 李健 00 20.60 演唱 王菲 00 26.60 04 40.75 02 39.90 00 36.25 只是因為在人群中多看了你一眼 04 49.00 02 47.44 00 43.69 再也沒...

成語json 用Python寫個成語接龍

昨天突然想起有一次我在玩手機,我內侄女說要跟我玩成語接龍,接著突然來了一個想法,我自己寫一個成語接龍的介面工具,豈不是很好?於是乎,本文就誕生了。要能成語接龍,你要怎麼做?接著你需要獲取json檔案裡的所有成語,還有每個成語的首字母。當出了一個成語,首先判斷是不是一個正確的成語 然後提取成語最後一個...

用 Python 寫個開心刮刮樂

刮刮 常指卡上的一種覆蓋數字和字母密碼等的塗層,通常包括紙質和電子兩種型別,刮刮卡在市場上有著比較廣泛的應用,我們見到最多的應該是各類 活動了,本文我們使用 python 來做一個簡單的 刮刮卡。從圖中我們可以看到底圖包括 一等獎 二等獎 謝謝惠顧三種,如果我們參與過刮刮卡 的話,會發現幾乎刮開都是...