ant*_*tak 1 elasticsearch logstash
我正在使用fingerprintLogstash中的过滤器来创建我在输出中设置的指纹字段.document_idelasticsearch
配置如下:
filter {
fingerprint {
method => "SHA1"
key => "KEY"
}
}
output {
elasticsearch {
host => localhost
document_id => "%{fingerprint}"
}
}
Run Code Online (Sandbox Code Playgroud)
这导致fingerprintElasticsearch 中的冗余字段具有与之相同的值_id.如何防止将此冗余字段保存到ES?
如果您使用的是logstash 1.5或更高版本,则可以将字段放在元数据中,然后不会将其作为常规消息的一部分发送到elasticsearch.
filter {
fingerprint {
...
target => "[@metadata][fingerprint]"
}
}
output {
elasticsearch {
...
document_id => "%{[@metadata][fingerprint]}"
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2194 次 |
| 最近记录: |