根据另一个字段更改一个字段?

时间:2019-08-27 09:36:11

标签: logstash

Logstash正在接收一个docs JSON对象,其中包含各种类型的文档。

{
  "docs": [
    {
      "_id": "project:A",
      "_rev": "project:1",
      "name": "secret",
      "children": ["item:A"]
    },
    {
      "_id": "item:A",
      "_rev": "item:1",
      "name": "secret"
    }
  ]
}

我希望从项目开始的每个带有_id的文档都包含匹配的子级。最终结果应该是:

{
  "docs": [
    {
      "_id": "project:A",
      "_rev": "project:1",
      "name": "secret",
      "children": [{
        "_id": "item:A",
        "_rev": "item:1",
        "name": "secret"
    }]
    },
  ]
}

我该如何实现?

这是我的conf文件。我无法弄清楚如何解决这个问题:

input {
  file {
   path => ["/home/logstash/logstash-testdata.json"]
   sincedb_path => "/dev/null"
   start_position => "beginning"
  }
}
filter {
  json {
    source => "message"
  }
  // ... ???
}
output {
  elasticsearch {
    hosts => ["localhost:9200"]
  }
  stdout {
    codec => rubydebug
  }
}

0 个答案:

没有答案