我正在处理大型日志文件,其中1条消息可以在多行上。
2015-08-07 00:01:16,886 [2100] DEBUG Dac.DacNet [(null)] - Get1ExpiredSession entry
2015-08-07 00:01:16,886 [2100] DEBUG Dac.DacNet [Service: Get1ExpiredSession
SPROC: Get1ExpiredSession]
2015-08-07 00:01:56,276 [4440] DEBUG axax.Global [(null)] - Application_BeginRequest - Load Balanced: True
2015-08-07 00:01:56,276 [4440] DEBUG axax.Global [(null)] - Application_BeginRequest - Load Balancer Secured: False
2015-08-07 00:01:56,292 [4440] DEBUG axax.Global [(null)] - Application_BeginRequest - Request Secured: False
2015-08-07 00:01:56,292 [4440] DEBUG axax.Global [(null)] - Application_BeginRequest - Skip Redirection: True
如您所见,第三行消息('SPROC:Get1ExpiredSession')属于前一行。
但是,当我使用sc.textFile('/group/*')
阅读文件时,这些行会自动拆分为\n
有没有办法拆分,例如,re.compile('\d{4}-\d{2}-\d{2}')
或相反,不分割在不以日期开头的行上?
如果我可以将消息附加回他们所属的行,我也可以给我一个解决方案。