[英]Grok Pattern to Parse Multiple loglines
我有 3 行不同结构的日志。 我正在尝试构建一个 grok 模式来过滤日志。
[2022-10-04 21:45:27,444: INFO/MainProcess] Events of group {task} enabled by remote
[2022-10-04 21:43:06,521: ERROR/MainProcess] consumer: Cannot connect to redis://10.0.13.57:6379/0: Error 111 connecting to 10.0.13.34:6379. Connection refused..
[2022-10-04 21:45:22 +0000] [3094] [INFO] Listening at: http://0.0.0.0:8793 (3094)
我期待:
时间戳:日志级别:消息:
我的 grok 模式不匹配任何内容: \[%{TIMESTAMP_ISO8601:timestamp}\]\:%{LOGLEVEL:loglevel}%{WORD: class} %{SPACE}%{GREEDYDATA:logMessage}
您需要为单独的日志设置两个 grok 模式。
[2022-10-04 21:45:27,444: INFO/MainProcess] Events of group {task} enabled by remote
[2022-10-04 21:43:06,521: ERROR/MainProcess] consumer: Cannot connect to redis://10.0.13.57:6379/0: Error 111 connecting to 10.0.13.34:6379. Connection refused..
以上两个日志的 grok 模式:
%{DATESTAMP:timestamp}\: %{LOGLEVEL:loglevel}\/%{DATA:data}\] %{GREEDYDATA:message}
[2022-10-04 21:45:22 +0000] [3094] [INFO] Listening at: http://0.0.0.0:8793 (3094)
上述日志的 grok 模式:
\[%{TIMESTAMP_ISO8601:timestamp} \+%{DATA:data}\] \[%{LOGLEVEL:loglevel}\] %{GREEDYDATA:message}
此外,在使用上述 GROK 模式解析日志后,您还可以使用 logstash 的Drop Filter删除生成的字段数据 [参见下面的 output 屏幕截图]。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.