簡體   English   中英

如何使用 grok 和 logstash 解析動態日志?

[英]how to parse dynamic logs using grok and logstash?

我是 logstash 和 grok 的新手,並試圖解析如下所示的日志:

2019-10-23 08:44:38.457  INFO 99999 [ID1=645ae2ae-a9a6-412f-b079-f0495aa9b713, ID2=62702, ID3=3e37ee7c-4e09-4924-be2f-66008dd19032] ---
2019-10-23 08:44:38.796 DEBUG 99999 [ID1=6cf44468-5baa-470b-9ee2-2aa7a74a858f] ---
2019-10-23 08:44:38.849 DEBUG 99999 [ID3=5766d625-366b-4ce6-9a3a-f5e5db3ea65d, ID1=6cf44468-5baa-470b-9ee2-2aa7a74a858f] ---

UUID1 可以是第一個或最后一個。 UUID2 可能不存在。

我如何用 grok 解析並保留所有 UUID(如果存在)?

提前致謝。

我不會為此使用 grok 。 我相信可以做到,因為您可以在 grok 模式中使用可選字段,但我認為 dissect 是一個更好的匹配......

    dissect { mapping => { "message" => '%{[@metadata][timestamp]} %{+[@metadata][timestamp]->} %{level} %{pid} [%{[@metadata][kvStuff]}] %{}' } }
    date { match => [ "[@metadata][timestamp]", "YYY-MM-dd HH:mm:ss.SSS" ] }
    kv { source => "[@metadata][kvStuff]" field_split => "," trim_key => " " }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM