Logstash,为项目中的每个包添加索引
我有来自不同软件包的日志 比如说,Logstash,为项目中的每个包添加索引,logstash,logstash-grok,logstash-configuration,Logstash,Logstash Grok,Logstash Configuration,我有来自不同软件包的日志 比如说, com.example.package1.subpackage1.MyClass com.example.package1.subpackage2.MyClass com.example.package2.subpackage1.MyClass com.example.package2.subpackage2.MyClass 我想为package1和package2创建索引 目前logstash配置如下: filter { if "package
com.example.package1.subpackage1.MyClass
com.example.package1.subpackage2.MyClass
com.example.package2.subpackage1.MyClass
com.example.package2.subpackage2.MyClass
我想为package1
和package2
创建索引
目前logstash配置如下:
filter {
if "package1" in [logger_name] {
mutate {
add_tag => "package1"
}
}
if "package2" in [logger_name] {
mutate {
add_tag => "package2"
}
}
}
output {
if "package1" in [tags] {
elasticsearch {
index => "package1"
}
}
if "package2" in [tags] {
elasticsearch {
index => "package2"
}
}
}
但每次我添加新包时,都需要用新配置重新启动logstash,是否可以创建更通用的配置 使用grok{}过滤器将名称提取到日志存储字段中,然后您可以在输出{}节中引用该字段。如何通过grok从
com.example.package1.subpackage1.MyClass
中提取package1
?浏览grok手册页,在grok调试器中测试内容,然后在此处或IRC上询问问题(如果不起作用)。