如何使用 logstash 来理解这个输入?
How to grok this input with logstash?
我正在尝试使用 logstash 查找一些行,所以首先我创建了两个模式 如下所示:
AZ_LIST [1-9a-zA-Z,]+
AZ_STRING [a-zA-Z._-]+
然后我配置了 logstash 来理解这个输入:
security=0 system=23 CPU=this.adresse_false Pvm=0,0,0,0,0,0,0,0 Vlan2=AZERT,566,2184,798,3312
我的过滤器是:
filter {
grok {
patterns_dir => "/patterns"
match => [
"message" , "security=%{NUMBER:security} system=%{NUMBER:system} CPU=%{AZ_STRING:CPU} Pvm=%{AZ_LIST:Pvm} Vlan2=%{AZ_LIST:Vlan2}"
]
tag_on_failure => [ "failure_grok_exemple" ]
break_on_match => false
}
}
但是这些都不行
您的模式有误。您的 AZ_LIST
不包括 0
,但您的日志有 0
EX:Pvm=0,0,0,0,0,0,0,0
这是我的配置,我可以成功解析你的日志。
filter {
grok {
patterns_dir => "./patterns/"
match => [
"message" , "security=%{NUMBER:security} system=%{NUMBER:system} CPU=%{AZ_STRING:CPU} Pvm=%{AZ_LIST:Pvm} Vlan2=%{AZ_LIST:Vlan2}"
]
}
}
模式:
AZ_LIST [0-9a-zA-Z,]+
AZ_STRING [a-zA-Z._-]+
我正在尝试使用 logstash 查找一些行,所以首先我创建了两个模式 如下所示:
AZ_LIST [1-9a-zA-Z,]+
AZ_STRING [a-zA-Z._-]+
然后我配置了 logstash 来理解这个输入:
security=0 system=23 CPU=this.adresse_false Pvm=0,0,0,0,0,0,0,0 Vlan2=AZERT,566,2184,798,3312
我的过滤器是:
filter {
grok {
patterns_dir => "/patterns"
match => [
"message" , "security=%{NUMBER:security} system=%{NUMBER:system} CPU=%{AZ_STRING:CPU} Pvm=%{AZ_LIST:Pvm} Vlan2=%{AZ_LIST:Vlan2}"
]
tag_on_failure => [ "failure_grok_exemple" ]
break_on_match => false
}
}
但是这些都不行
您的模式有误。您的 AZ_LIST
不包括 0
,但您的日志有 0
EX:Pvm=0,0,0,0,0,0,0,0
这是我的配置,我可以成功解析你的日志。
filter {
grok {
patterns_dir => "./patterns/"
match => [
"message" , "security=%{NUMBER:security} system=%{NUMBER:system} CPU=%{AZ_STRING:CPU} Pvm=%{AZ_LIST:Pvm} Vlan2=%{AZ_LIST:Vlan2}"
]
}
}
模式:
AZ_LIST [0-9a-zA-Z,]+
AZ_STRING [a-zA-Z._-]+