说明:笔者也是因为应工作需要去学习了大概2个月的ELK

1.需求

在收集日志的时候往往都需要需要分析日志需要一些自己特定的字段去匹配我们需要的字段内容,以下我会根据一个列子去说明一下去如何使用logstash去自定义正则

2.需要具备哪些?可以自定义正则?

(1)需要了解普通的正则,如果不会可以去廖雪峰官网去看看他的Python有讲正则的(我是从他那学的正则)

(2)需要会使用grok debugger调试自己写的正则,为了方便推荐自己虚拟机安装一个grok debugger工具

3.logstash自定义正则的格式

(?<自定义字段名>正则)

4.举例子

比如要使用grok自定义正则去匹配下边的日志

10.173.28.112  2018-11-22 16:30:58  GET  /AUTO/users/loginSuccess.do  200  46112  0.075

正则匹配如下:

(?[0-9\.]+)\s+(?[0-9\-]+\s[0-9\:]+)\s+(?[A-Z]+)\s+(?[\/A-Za-z0-9\.]+)\s+(?[0-9]+)\s+(?[0-9]+)\s+(?[0-9\.]+)

调试工具解析出来的如下图:


5.文章会推送到微信公众号,会写一写曾经躺过的坑