我们想为我们公司的几个不同项目设置一个logstash服务器。现在我尝试在 Kibana 中启用它们。我的问题是:如果我有不同模式的日志文件,我该如何为它们构建过滤器?示例:logstash.conf:
input {
file {
type => "A"
path => "/home/logstash/A/*"
start_position => "beginning"
}
file {
type => "B"
path => "/home/logstash/B*"
start_position => "beginning"
}
}
filter {
multiline {
pattern => "^%{TIMESTAMP_ISO8601}"
negate => true
what => "previous"
}
grok {
type => A
match => [ "message", "%{TIMESTAMP_ISO8601:logdate} %{DATA:thread %{LOGLEVEL:level}\s*%{DATA:logger_name}\s*-\s*%{GREEDYDATA:log_text}"]
add_tag => [ "level_%{level}" ]
}
date {
match => ["logdate", "YYYY-MM-dd HH:mm:ss,SSS"]
}
grok {
type => B
match => [ any other pattern ...
}
}
output {
elasticsearch { embedded => true }
}
我是否必须为每个项目(A、B、C、...)创建一个自己的过滤器,当我为每个项目再次使用不同模式的日志文件时,我该怎么办?