0
我有一个日志文件,我用telegraf.logparser
解析它,然后将它发送到influxdb。问题是,我的日志文件有一个完整的字符串不同的领域:Grok,用不同的值处理日志
2016-12-06 11:13:34 job id: mHiMMDmCDFKDmGXNMhm, lrmsid: 13370
2016-12-06 11:14:34 job id: seeeeeewsda33rfddSD, lrmsid: 13371
2016-12-06 11:14:37 job id: dmABFKDmqKcNDmHBFKD, failure: "Timeout"
我可以匹配单与
%{TIMESTAMP_ISO8601} job id: %{WORD:jobid}, lrmsid: {%WORD.lrmsid}
or
%{TIMESTAMP_ISO8601} job id: %{WORD:jobid}, failure: {%WORD.fail}
但我怎么能做到这一点线,同时获得..所以,如果lrmsid没有设置,它得到lrmsid=null, and failure="Timeout"
..如果lrmsid设置其lrmsid=12345 and failure=null
是的,使用“可选”字段帮助! – user1908375
“接受答案”如何? ;) – deveth0
正确的语法是:'(?:,failure:%{WORD:fail})?' – user1908375