簡體   English   中英

Logstash grok匹配過濾器的消息密鑰是什么?

[英]Logstash grok match filter what is the message key?

對於幾乎所有使用“ match”的gr​​ok過濾器,該值都是另一個散列,其鍵為“ message”。 關鍵“消息”的意義是什么?

似乎散列的值部分是所有解析發生的地方。 該密鑰是否總是消息? 密鑰對輸出值有影響嗎?

filter {
  grok {
    match => { "message" => "%{SYSLOGBASE} %{DATA:data}" }
  }
}

在這種情況下,消息是事件類的屬性。 事件來自輸入,即對於STDOUT輸入(或任何syslog文件),每一行將是一個新事件,其中message將是該行中的實際文本。

grok過濾器將對您提供的示例代碼執行的操作本質上類似於以下方面:

(偽代碼)

 match(event, field, pattern)
   value = event.get(field) #field = 'message'; value = the actual text
   pattern.match(value)

如果匹配成功,則將更改event.message的值,因為您執行%{DATA:message}

如果您有興趣,可以在這里找到相關的源代碼,尤其是match()和handle()。

暫無
暫無

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

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