logstash 在8.9v中,当使用logstatsh从2.3中克隆数据时,_id值填充了一些随机字符串

vsikbqxv  于 9个月前  发布在  Logstash
关注(0)|答案(2)|浏览(61)

logstatsh.conf

input {
  elasticsearch {
    hosts => "XXXXXXXXX"
    index => "mon"
  }
}

output {
  elasticsearch {
    hosts => "XXXXXX"
    index => "mon"
    user => "XXXXX"
    password => "XXXXXX"

    }
}

_id在Logstash中运行管道时没有获取数据。我希望在8.9中有相同的_id数据
例如:输出2.3 V的_id值为“yyyy-mm-dd-hh-mi-ss-ms”

"hits" : [
      {
        "_index" : "mon",
        "_id" : "2017-10-23-16.41.22.548866",
        "_score" : 1.0,
        "_source" : {

输出8.9 v的_id值为“AwedmdfkgkiAkfkls”

"hits" : [

      {
        "_index" : "mon",
        "_id" : "AwedmdfkgkiAkfkls",
        "_score" : 1.0,
        "_source" : {
gdx19jrr

gdx19jrr1#

默认情况下,elasticsearch输入不包括文档元数据,如类型,索引和id到事件中。您需要使用docinfo标志启用它,然后指定在elasticsearch输出中获取id的位置。详细示例请参见文档。

pu82cl6c

pu82cl6c2#

在输入中使用以下内容,添加了部分

docinfo => true
    docinfo_target => "[@metadata][doc]"

并在输出部分添加

document_id => "%{[@metadata][doc][_id]}"

相关问题