如何解决弹性搜索 grok 过滤器
我刚刚开始使用 ELK 和 logstash 我想解析我的 apache 自定义日志 我写了简单的logstash管道
input {
beats {
port => 5044
}
filter {
grok {
match => { "message" => "%{COMBINEDAPACHELOG}" }
}
}
output {
stdout { codec => rubydebug }
}
我试过 match => { "message" => "%{COMMONAPACHELOG}" }
但它没有解析正确我的日志
我的日志示例
10.7.46.39 - - [25/Feb/2021:18:17:08 +0300] "POST /secure/TvmGw6 HTTP/1.1" 200 332
10.4.14.39 - - [25/Feb/2021:18:17:08 +0300] "POST /secure/TvmGw6 HTTP/1.1" 200 332
你能帮我写出正确的过滤器吗?谢谢
解决方法
这是与您的日志匹配的 Grok 模式:
%{IP:iPad dress} %{USER:ident} %{USER:auth} \[%{HTTPDATE:timestamp}\] \"%{WORD:verb} %{URIPATH:path} HTTP/%{NUMBER:httpversion}\" %{NUMBER:response} %{NUMBER:bytes}
我已使用 Grok Debugger 来验证 grik 模式。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。