在 logstash 中使用条件
Using a conditional in logstash
有人在输入中添加过条件吗?我正在使用各种版本的节拍插件。低于 7.11 的版本没有 @metadata 我想有条件地使用两个不同的指标。例如,
15 beats {
16 port => "5000"
17 codec => "plain"
18 ssl => true
19 ssl_certificate_authorities => ["/etc/pki/logstash/logstashCA.pem"]
20 ssl_certificate => "/etc/pki/logstash/logstashCA.pem"
21 ssl_key => "/etc/pki/logstash/logstashCA.p8"
22 ssl_verify_mode => "force_peer"
23 if [version] not in [beat] {
24 add_field => { "target_index" => "%{[@metadata][beat]}-%{[beat]}-7-%{+YYYY.MM.dd}" }
25 }
26 add_field => { "target_index" => "%{[@metadata][beat]}-%{[beat][version]}-%{+YYYY.MM.dd}" }
27 }
不,您不能有基于输入中事件字段的条件,因为在构建输入时没有事件退出。但是你可以在过滤器部分
if [beat][version] {
add_field => { "target_index" => "%{[@metadata][beat]}-%{[beat][version]}-%{+YYYY.MM.dd}" }
} else {
add_field => { "target_index" => "%{[@metadata][beat]}-%{[beat]}-7-%{+YYY
}
有人在输入中添加过条件吗?我正在使用各种版本的节拍插件。低于 7.11 的版本没有 @metadata 我想有条件地使用两个不同的指标。例如,
15 beats {
16 port => "5000"
17 codec => "plain"
18 ssl => true
19 ssl_certificate_authorities => ["/etc/pki/logstash/logstashCA.pem"]
20 ssl_certificate => "/etc/pki/logstash/logstashCA.pem"
21 ssl_key => "/etc/pki/logstash/logstashCA.p8"
22 ssl_verify_mode => "force_peer"
23 if [version] not in [beat] {
24 add_field => { "target_index" => "%{[@metadata][beat]}-%{[beat]}-7-%{+YYYY.MM.dd}" }
25 }
26 add_field => { "target_index" => "%{[@metadata][beat]}-%{[beat][version]}-%{+YYYY.MM.dd}" }
27 }
不,您不能有基于输入中事件字段的条件,因为在构建输入时没有事件退出。但是你可以在过滤器部分
if [beat][version] {
add_field => { "target_index" => "%{[@metadata][beat]}-%{[beat][version]}-%{+YYYY.MM.dd}" }
} else {
add_field => { "target_index" => "%{[@metadata][beat]}-%{[beat]}-7-%{+YYY
}