用python脚本监控并发量
发布时间:2020-05-25 00:22:03 所属栏目:Python 来源:互联网
导读:用python脚本监控并发量
|
下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。 脚本之家小编现在分享给大家,也给大家做个参考。 该脚本作用用于查询日志过去一分钟内的并发量,并发单位位1分钟,结果打印在标准输出中,可以配合一些软件实现日志的并发实时监控,比如zabbix。#! /usr/local/bin/python3
import sys
import re
import datetime
import os
def generate_previous_minutes():
format='%d/%b/%Y:%H:%M'
return (datetime.datetime.today()-datetime.timedelta(minutes=1)).strftime(format)
def check_logs(log_path,examine_minutes):
regex_minutes=re.compile(examine_minutes)
minutes_count=0
step=10*1024*1024
with open(log_path,encoding='Latin-1') as file:
line=file.readline()
while line:
time_line=line.split(' ')[3][1:]
if time_line>=examine_minutes:
file.seek(file.tell()-step)
file.readline()
break
file.seek(file.tell()+step)
if file.tell()>=os.path.getsize(log_path):
file.seek(file.tell()-step)
file.readline()
break
file.readline()
line=file.readline().strip()
for line in file:
line=line.strip()
words=line.split(' ')
if(regex_minutes.search(words[3])):
minutes_count+=1
print(minutes_count)
def main(log_path):
previous_minutes=generate_previous_minutes()
print(previous_minutes)
check_logs(log_path,previous_minutes)
if __name__ == '__main__':
log_path=sys.argv[1]
main(log_path)
以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。 如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
