0

我有以下使用 Filebeats 摄取的文档:

{
  "documentId": 12345,
  "parameters": [
    {
      "Name": "var1",
      "Type": "Numeric",
      "Value": 12345
    },
    {
      "Name": "var2",
      "Type": "String",
      "Value": "Test123"
    },
  ]
}

当我这样做decode_json_fields然后将生成的有效负载推送到 ElasticSearch 时,它会引发有关Value字段类型的错误。我无法控制来自 REST API 的结果 json,我想知道我是否可以Value使用convert处理器将所有字符串类型转换为字符串。我有以下示例 filebeats.yml 文件

filebeat.inputs:
- type: httpjson
  config_version: 2
  request.url: http://localhost:3000/payload
  processors:
    - decode_json_fields:
        fields: ["message"]
        max_depth: 5
        process_array: true
    - convert:
        fields:
          - {from: "message.parameters.Value", type: "string"}
        ignore_missing: false
output.console.pretty: true

如果我要转换的字段位于对象数组中,则此配置似乎不起作用。我找不到任何文档如何做到这一点。

4

0 回答 0