首页 > 解决方案 > Logstash grok 解析

问题描述

我们正在使用 logstash.log 文件数据将访问日志数据加载到 elasticsearch 中,如下所示。

2020-12-14 05:19:27.441 10.20.20.198 - narayana.sathya [14/Dec/2020:05:19:27 +0000] "GET /zoomdata/api/groups/5c9349a029a3fa0700a243ae HTTP/1.1" 200 5552 "https ://sidcpdata.abc.com:8443/zoomdata/visualization/5abb7a37498e961613d64bea+5ea7ce37ed982daaa8019c75" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88.Safari/537 /87.0.664.60" 315

任何人都可以帮我获得上述文件的 GROK 模式,我已经在 logstash 配置文件中的 GROK 模式下写了,但出现错误。

grok { match => [ "message", "%{DATESTAMP_12H:timestamp} %{NUMBER:ip} %{WORD:user} %{DATESTAMP_12H:timestamp} %{WORD:api_details} %{NUMBER:responce_type} %{NUMBER :type} %{WORD:dashbaord} %{GREEDYDATA:daemon_message}" ] }

标签: logstashlogstash-groklogstash-configuration

解决方案


试试这个模式:

%{TIMESTAMP_ISO8601:Time1}\s%{IPV4:IP}\s-\s%{NOTSPACE:UserName}\s\[%{NOTSPACE:TIME2}.*?\"%{WORD:APIMethod}\s%{URIPATH:API}\s%{NOTSPACE:Protocol}\"\s%{NUMBER:ResponseCode}\s%{NUMBER:PORT}\s\"%{URI:URL}%{GREEDYDATA:daemon_message}"

推荐阅读