-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathparseBusiLog.py
More file actions
36 lines (35 loc) · 1.34 KB
/
Copy pathparseBusiLog.py
File metadata and controls
36 lines (35 loc) · 1.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import os
import os.path
##use vars to match log's file type
manstdft='managestdout.log'
batstdft='batchstdout.log'
calstdft='calonlinestdout.log'
logdir='D:\\home\\wasadmin\\log'
##manlogdir='D:\\home\\wasadmin\\log\\apmanage'
##batlogdir='D:\\home\\wasadmin\\log\\apbatch'
##calstdft='D:\\home\\wasadmin\\log\\apcalonline'
sdict={}
for rt,dirs,files in os.walk(logdir):
for f in files:
fname=os.path.splitext(f)
if(manstdft in fname or batstdft in fname or calstdft in fname):
print(os.path.join(rt,f))
with open(os.path.join(rt,f),'r') as fo:
for line in iter(fo.readline, ''):
if 'SessionID' in line and 'SQL:' in line:
lss=line.split(' ')
timestamp=lss[3]+' '+lss[4]
sid=lss[7]
sql=line.split('SQL:')[1]
if sid not in sdict:
conts=[]
conts.append(timestamp+'|'+sql)
sdict[sid]=conts
else:
sdict[sid].append(timestamp+'|'+sql)
with open('D:\\home\\anaBus.dat','wt') as fa:
for k,v in sdict.items():
fa.write(k+'\n')
v1=sorted(v)
for value in v1:
fa.write(value)