Logstash,为项目中的每个包添加索引
Logstash, add index for every package in project
我有来自不同包的日志,
例如,
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{} 过滤器将名称提取到 logstash 字段中,然后您可以在输出{} 节中引用它。
我有来自不同包的日志,
例如,
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{} 过滤器将名称提取到 logstash 字段中,然后您可以在输出{} 节中引用它。