import base64
import os
import tarfile
import gzip
import zipfile
import re
# 对gz类型进行解压
def gzip_file(file):
c_path = file+"\\logcat_log.tar.gz"
try:
g = gzip.GzipFile(mode='rb',fileobj=open(c_path,'rb'))
open(c_path.replace('.gz',''),'wb').write(g.read())
except Exception as e:
print(e)
else:
untar(c_path.replace('.gz',''),file+'./',file)
#print('文件解压成功!')
def untar(fname,dirs,origin):
print("fname="+fname)
try:
t = tarfile.open(fname)
t.extractall(path=dirs)
except Exception as e:
print(e)
else:
#print('解压tar成功')
zip_allfile(origin+"\\log")
def zip_allfile(dirs):
for f in os.listdir(dirs):
if '.zip' in f:
zip_file = zipfile.ZipFile(dirs+"\\"+f)
zip_file.extract(zip_file.namelist()[0],dirs)
index = 0
for f in os.listdir(dirs):
if 'topmen' in f:
l_file = dirs+"\\"+f
with open(l_file, "r", encoding="utf-8" ,errors="ignore") as L:
for line in L:
if '%CPU' in line:
index = 1
elif index >= 1:
index += 1
if index == 5:
index = 0
s_line = re.sub(' +',' ',line)
s_line = s_line.split(' ')
data = [0,0,0,0,0]
if len(s_line) >= 12:
data[0] = s_line[2]
data[1] = s_line[6]
data[2] = s_line[7]
data[3] = s_line[9]
data[4] = l_file
if '.' in data[3]:
v = data[3][0:data[3].index('.')]
if int(v) > 40:
print(data)
else:
if int(v) > 40:
print(data)
# print(data)
if __name__ == "__main__":
#modify_name()
path = 'D:\\log分析\\log'
zip_allfile(path)
一键读取topmen
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 公司财务要求做一个Excel表格工资条内容群发邮箱的功能,由于我是菜鸟项目老大就把这任务交给我来做,开始时需求没谈...
- QQ群分享官网地址为“http://qun.qq.com/join.html”,复制到浏览器打开即可进入QQ群一键...