【发布时间】:2018-07-05 17:41:25
【问题描述】:
我正在寻找将日志文件中的两种常见模式加载到 pandas 数据帧中的标准 pythonic 方法。
跨越多行的记录:
=REPORT==== 26-Jun-2018::18:30:00 ===
column_1: some data
column_2: {'maybe': 'json or something'}
=REPORT==== 26-Jun-2018::19:30:00 ===
column_1: some data
column_2: {'maybe': 'json or something',
'and': 'maybe spanning multiple lines'}
可能跨越多行的记录:
2018-01-09 20:12:38,020 INFO logname: Examining 6668121 database
2018-01-09 20:13:00,020 ERROR logname: Caught an Exception
Traceback (most recent call last):
File "test.py", line 1, in __main__
None.do_the_thing()
AttributeError: 'NoneType' object has no attribute 'getDatabase'
对于第一个示例,我希望得到一个包含 ['timestamp', 'column_1', 'column_2'] 等列的数据框
对于第二个,['timestamp', 'log_level', 'logname', 'message text']
我很确定有一种方法可以为每条记录表示分隔符,而不仅仅是每行的末尾,以及每条记录的内部分隔符。
【问题讨论】: