cat tast.conf
input {
#在面板輸入
stdin{}
}
filter {
grok {
#自定義的目錄,只要目錄,就行
patterns_dir => ["/patterns"]
#自定義對(duì)應(yīng)的 值如‘d’
match => {
"message" => "%{d:dong} %{c:cheng} %{j:jian}"
}
#overwrite => ["message"]
#如果匹配舍棄message
remove_field => ["message"]
}
}
output {
#在控制板輸出
stdout{ codec => rubydebug}
}
這是自定義的文件
cat patterns/dong
d [a-zA-Z0-9._-]+
c \d+(?:\.\d+)?
j (?<request_time>\d+(?:\.\d+)?)
還有一個(gè)時(shí)間戳的例子(很可能會(huì)用到)
cat tast2.conf
input {
stdin{}
}
filter {
grok {
match => ["message", "%{SYSLOGTIMESTAMP:logdate}"]
}
date {
match => ["logdate", "dd/MMM/yyyy:HH:mm:ss"]
}
}
output {
stdout{ codec => rubydebug}
}
logstash -f tast2.conf
使用一下看下效果
Apr 17 09:32:01(設(shè)置的是這樣的時(shí)間格式)

image.png