ELK-logstash grok自定义正则

Posted 一直爱流浪的猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ELK-logstash grok自定义正则相关的知识,希望对你有一定的参考价值。

说明:笔者也是因为应工作需要去学习了大概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

正则匹配如下:

(?<User_ip>[0-9\.]+)\s+(?<Date>[0-9\-]+\s[0-9\:]+)\s+(?<Method>[A-Z]+)\s+(?<Url>[\/A-Za-z0-9\.]+)\s+(?<Status>[0-9]+)\s+(?<Request_send>[0-9]+)\s+(?<Request_time>[0-9\.]+)

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


以上是关于ELK-logstash grok自定义正则的主要内容,如果未能解决你的问题,请参考以下文章

干货 | Logstash自定义正则表达式ETL实战

干货 | Logstash自定义正则表达式ETL实战

logstash / grok 自定义字段

Grok自定义模式

Logstash grok 模式过滤自定义日志消息

grok pattern 自定义