使用Logstash过滤插件Grok实现多模式匹配

使用Logstash过滤插件Grok实现多模式匹配

一个日志文件很有可能存在多种不同数据格式的日志,tomcat的日志文件中就存在多种不同格式的日志数据。

我们需要兼容几种不同格式的日志,就需要使用到grok的多模式匹配了,针对日志数据字段的不同,配置多种格式的正则表达式,将可能出现的数据格式全部都配置一个正则模式,日式数据采集以后,首先使用第一个正则模式去匹配,不兼容则使用第二个正则去匹配,直到最终匹配到对应的内容。

grok多模式语法格式:

grok {
	mastch => [
		"message","%{IP:client_ip}",
		"message","%{IP:client_ip} %{WORD:request_type}"
	]
}

mastch从{}变成了[]
字段间的不同表达式以,进行分隔
原来的字段名称后面是=>改成,

案例:

模拟数据:"10.1.1.1 GET /subsaji/akshd/sadjhi/index 1726 0.124 521123"

192.168.223.223 GET /resource/js/iuys.png 876 1.23 xyszs 12345"

采集这两种不同内容格式的日志数据

1)首先编写正则表达式分别匹配出两个数据的字段

#第一条数据
192.168.10.1 GET /subsa

猜你喜欢

转载自blog.csdn.net/weixin_44953658/article/details/125758749
今日推荐