解决 logstash 输出到 Elasticsearch 时指定 document_id

今天使用elk搜集日志的时候想到一个事情,是否可以指定es索引中的document_id。查了资料之后发现还真有这个:

1
2
3
4
5
6

elasticsearch {
hosts => [ "localhost:9200" ]
index => "%{[fields][service_name]}-%{+YYYY.MM.dd}"
document_id => "%{@timestamp}"
}

就是在logstash.conf中的output中,设置elasticsearch里面document_id就可以了。就是这么简单。当然我这里是用timestamp做的id,其实可以自己换成一个其它的。
es 对一个 id 添加两次是支持的,里面的字段 version 会加 1。

本文标题:解决 logstash 输出到 Elasticsearch 时指定 document_id

文章作者:陈志军

发布时间:2018-04-02 17:05:32

原始链接:http://chenzhijun.me/2018/04/02/logstash-output-elasticsearch-document-id/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

坚持原创技术分享,您的支持将鼓励我继续创作!