Logstash 使用 filebeat 名称覆盖主机
Logstash override host with filebeat name
我已成功设置 FileBeat -> Logstash -> ElasticSearch -> Kibana
。现在在 logstash 中,我想用 beat.name
覆盖 host
。但是,当我尝试引用节拍元数据时,变量未解析。
mutate {
add_field => {
"timestamp" => "%{year}-%{month}-%{day} %{time}"
}
replace_field => {
"host" => "%{[@metadata][beat][name]}"
}
}
我想我缺少一些主要配置。即使 Logstash
将其转发给 elasticsearch
,这些符号解析也没有完成。
output {
elasticsearch {
hosts => "localhost:9200"
manage_template => false
index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
document_type => "%{[@metadata][type]}"
}
我们如何正确引用 logstash 配置文件中的 filebeat 元信息?
beat.name
字段未在 @metadata
对象中携带。 beat
是事件中的顶级字段。因此要引用值使用 [beat][name]
或在字符串中使用 "%{[beat][name]}"
.
我已成功设置 FileBeat -> Logstash -> ElasticSearch -> Kibana
。现在在 logstash 中,我想用 beat.name
覆盖 host
。但是,当我尝试引用节拍元数据时,变量未解析。
mutate {
add_field => {
"timestamp" => "%{year}-%{month}-%{day} %{time}"
}
replace_field => {
"host" => "%{[@metadata][beat][name]}"
}
}
我想我缺少一些主要配置。即使 Logstash
将其转发给 elasticsearch
,这些符号解析也没有完成。
output {
elasticsearch {
hosts => "localhost:9200"
manage_template => false
index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
document_type => "%{[@metadata][type]}"
}
我们如何正确引用 logstash 配置文件中的 filebeat 元信息?
beat.name
字段未在 @metadata
对象中携带。 beat
是事件中的顶级字段。因此要引用值使用 [beat][name]
或在字符串中使用 "%{[beat][name]}"
.