我想通过logstash的grok过滤器提取字段。例如,如果出现以下日志,我希望提取消息时间、线程、日志级别和状态代码。
2020-01-01 10:10:10 QuartzScheduler-1错误c.l.c.i.c.t.a.c.AmazonElbV2Task-出现异常.....LoadBalancing,状态码:400,错误码:节流;
消息时间、线程和日志级别是通过以下过滤器提取的。如何提取状态码?
%{TIME:messageTime} [(?A-Za-Z0-9\W-_+)] %{LOGLEVEL:logLevel}
发布于 2020-05-27 17:18:36
您可以使用以下GROK表达式。它是使用GROK调试器和您提供的输入进行测试的。我建议你也使用来自kibana的GROK调试器,或者你可以在线找到1来构建你的GROK表达式。
^%{TIMESTAMP_ISO8601:event_timestamp}%{SPACE}\[%{DATA:thread}\]%{SPACE}%{LOGLEVEL:log_level}%{GREEDYDATA}Status Code: %{NUMBER:status:int}%{GREEDYDATA}$https://stackoverflow.com/questions/62039329
复制相似问题