【发布时间】:2017-02-27 13:18:04
【问题描述】:
美好的一天! 我有这种格式的日志:
[14-10-2016 00:00:04,004 INFO WebService:1603] [172.16.1.10] [0000077000013] [ID=N0000077000013] [N=147639237688] REQUEST getStatus
我想出了这个正则表达式:
/(?<time>\d{1,2}-\d{1,2}-\d{4} \d{1,2}:\d{1,2}:\d{1,2},\d{3}) (?<message1>[=]+) .(?<ID>ID=\w*) .(?<N>N=\w*) (?<messages>.*)/
我想识别日期、从 INFO 到 ID=、ID、N 和最后一部分的部分,但 fluentd 返回“模式不匹配”。正则表达式的每个部分都在流利的正则表达式测试站点上单独工作。
什么是正则表达式? 谢谢。
【问题讨论】:
-
试试
(?<time>\d{1,2}-\d{1,2}-\d{4} +\d{1,2}:\d{1,2}:\d{1,2},\d{3}) +(?<message1>[A-Z]+) .*\[ID=(?<ID>\w+)] +\[N=(?<N>\w+)] (?<messages>.*) -
谢谢 Wiktor,它正在工作。