实时监控日志:python实现钉钉告警
#!/usr/local/python3
import os,sys,subprocess,re
import requests
import datetime
import json
#钉钉告警:
def info(jy):
url = '钉钉地址'
headers = {
'Content-Type': 'application/json;charset=utf-8'
}
formdata = {
"msgtype": "text",
"text": {"content":str(jy)}
}
#print(formdata)
requests.post(url=url, data=json.dumps(formdata),headers=headers)
def monitor_log(access_log):
print('monitor access log :%s' % access_log)
#实时读取访问日志
popen = subprocess.Popen('tail -f ' + access_log, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
while True:
line = popen.stdout.readline().strip().decode('utf-8')
# print(line)
if "running windowPost" in line:
info(line)
elif "submitting window PoSt" in line:
info(line)
elif "Submitted window post" in line:
info(line)
else:
pass
#print(line)
if __name__ == '__main__':
monitor_log("/var/log/miner.log")