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