使用Logstash过滤插件Grok的内置正则实现日志数据格式化

使用过滤插件Grok的内置正则实现日志数据格式化

格式化之前的日志内容

192.168.10.1 GET /index.html 19876 0.234

一条nginx的日志内容,第一列是客户端IP,第二列是请求方式,第三列是请求的URL,第四列是请求的文件大小,第五列是响应时间,如果这条数据不进行格式化,我们是无法针对性的去匹配相应的日志内容,比如想统计出响应时间比较长的页面,我们就需要去筛选第五列了,但是日志不进行格式化,就无法针对第五列去做筛选。

kibana上可以针对grok的表达式进行调试

点击Management—>开发工具—>grok debugger

image-20211220144515873

1)在kibana上使用grok正则调试格式化日志数据

样例数据:192.168.10.1 GET /index.html 19876 0.234

在Grok模式中填写正则表达式,针对每一个字段去做响应的处理

Grok模式:%{IP:client_ip} %{WORD:request_type} %{URIPATHPARAM:url} %{NUMBER:bytes} %{NUMBER:response_time}

数据中第一列为IP字段,可以使用正则模式为IP的表达式,

猜你喜欢

转载自blog.csdn.net/weixin_44953658/article/details/125758579