2017-10-20 138 views
0

我試圖在未找到相應標籤時將其中一個圖案留爲空白。但不知何故,下一場比賽正在取代。logstash grok pattern留下標籤爲空

我有一個的logline如下

[2017-10-19 09:41:07,204: INFO/Worker-5] <test id = '123:4567', name = 'example_testcase'><TID:0b46030ee6f14055b41b796a4eebfef2><RID:>POST some url to post 

我想這下面神交模式匹配

^\[%{TIMESTAMP_ISO8601:timestamp}%{DATA}%{LOGLEVEL:log_level}/%{DATA:work_id}\]%{SPACE}(?:<%{DATA:message_headers}>)?(<TID:%{DATA:tid}>)?(<RID:%{BASE10NUM:rid}>)?%{GREEDYDATA:log_message} 

沿作爲message_headers發現這工作不錯,如果沒有找到它,然後郵件標題正在被TID取代。 例如:

[2017-10-19 09:41:07,204: INFO/Worker-5] <TID:0b46030ee6f14055b41b796a4eebfef2><RID:>POST some url to post 

那麼神交模式,應該讓message_headers爲空白。相反,TID位於message_headers中。任何人都可以幫助如何實現這一功能。

回答

1

我刪除了可選的表達式「?」經過tid和它的工作。謝謝