提取数组

编辑

此功能为技术预览版,可能会在未来的版本中更改或删除。Elastic 将努力解决任何问题,但技术预览版中的功能不受官方 GA 功能的支持 SLA 的约束。

extract_array 处理器使用从数组字段读取的值填充字段。

示例

编辑

以下示例使用 my_array 字段的第一个元素填充 source.ip,使用第二个元素填充 destination.ip,使用第三个元素填充 network.transport

  - extract_array:
      field: my_array
      mappings:
        source.ip: 0
        destination.ip: 1
        network.transport: 2

配置设置

编辑

Elastic Agent 处理器在 ingest 管道之前执行,这意味着您的处理器配置不能引用 ingest 管道或 Logstash 创建的字段。有关更多限制,请参阅使用处理器的限制有哪些?

名称 必需 默认值 描述

field

要提取其元素的数组字段。

mappings

将每个字段名称映射到数组索引。使用 0 表示数组中的第一个元素。多个字段可以映射到同一个数组元素。

ignore_missing

false

是否忽略缺少数组字段的事件。如果为 false,则如果指定的字段不存在,则事件处理失败。

overwrite_keys

false

是否覆盖映射中指定的目标字段(如果这些字段已存在)。如果为 false,则如果目标字段已存在,处理将失败。

fail_on_error

true

如果为 true 并且发生错误,则对事件的任何更改都将回滚,并返回原始事件。如果为 false,则尽管发生错误,处理仍会继续。

omit_empty

false

是否从数组中提取空值。如果为 true,则不会将目标字段设置为空值,而是保持未设置状态。空字符串 ("")、空数组 ([]) 或空对象 ({}) 被视为空值。