簡體   English   中英

具有不同事件分隔符的logstash多行的哪種grok模式

[英]Which grok pattern for logstash multiline with different event dividers

我有一個日志文件(zope / plone event.log),該日志文件使用自定義字符串(例如“ -----”)作為事件之間的分隔符,用於將此日志文件解析為logstash的grok模式應該如何?

這是一個示例,日志如下所示:

------
2014-07-21T12:13:30 INFO ZServer HTTP server started at Mon Jul 21 12:13:30 2014
        Hostname: localhost
        Port: 8401
------
2014-07-21T12:13:44 WARNING SecurityInfo Conflicting security declarations for "setText"
------
2014-07-21T12:13:44 WARNING SecurityInfo Class "ATTopic" had conflicting security declarations
------
2014-07-21T12:13:47 INFO DocFinderTab Applied patch version 1.0.5.

您應該從多行編解碼器或過濾器開始創建一個要處理的事件。

編輯:

該文檔給出了以下示例:

filter {
  multiline {
    pattern => "pattern, a regexp"
    negate => boolean
    what => "previous" or "next"
  }
}

並描述“求反”和“做什么”。 希望“模式”有意義。

那么,“每個不以日期開頭的行都屬於前一行”呢? 可能是這樣的:

filter {
  multiline {
    negate => 'true'
    pattern => "^%{TIMESTAMP_ISO8601} "
    what => 'previous'
  }
}

每行末尾都帶有“ ----”。 由於不需要它們作為定界符,因此可以擺脫它們(在多行過濾器節之前):

if message =~ /^-+$/ {
    drop{}
}

暫無
暫無

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

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