带有logspout的多行过滤器

时间:2016-09-27 00:12:57

标签: logstash logstash-grok

Logspout将元数据添加为每个日志条目的前缀。现在,在多行日志的情况下,过滤器工作正常,并将所有多行日志合并为单个事件,但如何摆脱每个日志条目上的前缀数据(元数据)。

 <14>2015-02-10T12:59:09Z logspout dev_zservice_1[1]:
 org.springframework.web.util.NestedServletException: Request
 processing failed; nested exception is
 org.springframework.dao.DataAccessResourceFailureException:
 <14>2015-02-10T12:59:09Z logspout dev_zservice_1[1]:    at
 org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:978)
 <14>2015-02-10T12:59:09Z logspout dev_zservice_1[1]:    at
 org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:868)
 <14>2015-02-10T12:59:09Z logspout dev_zservice_1[1]:    at
 javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
 <14>2015-02-10T12:59:09Z logspout dev_zservice_1[1]:    at
 org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)

如何在多行事件中删除日志条目中的元数据?

1 个答案:

答案 0 :(得分:0)

您可以尝试这样的事情:

filter {
    mutate {
        gsub => [ "message", "<\d+>.*?:\s", "" ] 
    }
}

这将检查字段&#34; message&#34;,从&#34;&lt; 14&gt;&#34;中选择子字符串。到冒号后跟一个空格,并用空字符串替换那些子串。