如何将临时数据从过滤器传递到 logstash 中的输出
How to pass temporary data from filter to output in logstash
如何将过滤器中的临时数据传递到 logstash 中的输出?
filter {
mutate {
add_field => {"TEMP_DATA" => "%{some value}"}
}
}
output {
elasticsearch {
document_id => "%{TEMPDATA}"
}
}
以上将输出TEMPDATA值
实现此目的的正确和标准方法是使用 @metadata
field。 @metadata
是一个特殊字段,永远不会存储在您的事件中,但其唯一目的是在您的输入、过滤器和输出之间传递数据。
示例用法:
filter {
mutate { add_field => { "[@metadata][TEMP_DATA]" => "%{some value}" } }
}
output {
elasticsearch {
document_id => "%{[@metadata][TEMP_DATA]}"
}
}
如何将过滤器中的临时数据传递到 logstash 中的输出?
filter {
mutate {
add_field => {"TEMP_DATA" => "%{some value}"}
}
}
output {
elasticsearch {
document_id => "%{TEMPDATA}"
}
}
以上将输出TEMPDATA值
实现此目的的正确和标准方法是使用 @metadata
field。 @metadata
是一个特殊字段,永远不会存储在您的事件中,但其唯一目的是在您的输入、过滤器和输出之间传递数据。
示例用法:
filter {
mutate { add_field => { "[@metadata][TEMP_DATA]" => "%{some value}" } }
}
output {
elasticsearch {
document_id => "%{[@metadata][TEMP_DATA]}"
}
}