没有跑?“ 1月23日16:54:16 pfsense php:rc.start_packages:The 命令'/usr/local/etc/rc.d/radiusd.sh stop'返回退出代码'1', 输出是'radiusd not running?'
Jan 23 16:54:19 pfsense php:rc.start_packages:[FreeRADIUS]:XMLRPC 同步从超时150秒开始。
Jan 23 16:54:19 pfsense php:rc.start_packages:[FreeRADIUS]:XMLRPC 由于以下错误导致与'20 .20.20.2'同步中止: 配置错误的复制目标端口。
Jan 23 16:54:19 pfsense php:rc.start_packages:[FreeRADIUS]:XMLRPC 同步即将结束。
Jan 23 16:54:19 pfsense php:rc.start_packages:该命令 '/usr/local/etc/rc.d/radiusd.sh stop'返回退出代码'1', 输出是'radiusd not running?'
Jan 23 16:54:21 pfsense php:rc.start_packages:[FreeRADIUS]:XMLRPC 同步从超时150秒开始。
我想通过python将系统日志文件的上述数据解析为csv文件。首先,我尝试了以下代码
import csv
import itertools
with open('system.log', 'r') as in_file:
stripped = (line.strip() for line in in_file)
lines = (line for line in stripped if line)
grouped = zip(*[lines] * 7)
with open('system.csv', 'w') as out_file:
writer = csv.writer(out_file)
writer.writerow(('month', 'day',
'time','pfsense','type','package','comment'))
writer.writerows(grouped)
标题完美无缺,但文件实际上并未转换为csv。因此,我将文件转换为分隔文本文件,并使用以下代码进行解析。
import csv
with open('systemExcel.txt', "r") as infile, open('systeExcel.csv', 'w')
as outfile:in_txt = csv.reader(infile, delimiter = '\t')
out_csv = csv.writer(outfile)
out_csv.writerows(in_txt)
以上代码工作正常。但我需要一个脚本,可以将原始日志文件数据转换为带有标题的csv文件。
答案 0 :(得分:1)
问题:...我需要一个可以将原始日志文件数据转换为带头文件的csv文件的脚本。
只读取一个数据行 考虑这个例子:
with open('system.csv', 'w') as out_file,
open('system.log', 'r') as in_file:
writer = csv.writer(out_file)
writer.writerow(['month', 'day','time', 'pfsense', 'type', 'package', 'comment'])
for line in in_file:
columns = line[:-1].split(' ')
columns[6] = ' '.join(columns[6:])
writer.writerow(columns[:7])
<强>输出强>:
月,日,时,pfsense,类型,封装,注释 Jan,23,16:54:16,pfsense,php :, rc.start_packages :,命令...(为简洁省略) Jan,23,16:54:19,pfsense,php :, rc.start_packages:,[FreeRADIUS]:XMLRPC ...(为简洁起见省略) Jan,23,16:54:19,pfsense,php :, rc.start_packages:,[FreeRADIUS]:XMLRPC ...(为简洁起见省略) Jan,23,16:54:19,pfsense,php :, rc.start_packages:,[FreeRADIUS]:XMLRPC ...(为简洁起见省略) Jan,23,16:54:19,pfsense,php :, rc.start_packages :,命令...(为简洁省略) Jan,23,16:54:21,pfsense,php :, rc.start_packages:,[FreeRADIUS]:XMLRPC ...(为简洁省略)
使用Python测试:3.4.2