提取数组
编辑提取数组编辑
此功能处于技术预览阶段,可能会在将来的版本中更改或删除。Elastic 将努力修复任何问题,但技术预览中的功能不受官方 GA 功能支持 SLA 的约束。
extract_array
处理器使用从数组字段读取的值填充字段。以下示例将使用 my_array
字段的第一个元素填充 source.ip
,使用第二个元素填充 destination.ip
,使用第三个元素填充 network.transport
。
processors: - extract_array: field: my_array mappings: source.ip: 0 destination.ip: 1 network.transport: 2
支持以下设置
-
field
- 要提取其元素的数组字段。
-
mappings
- 将每个字段名映射到数组索引。对于数组中的第一个元素,使用 0。多个字段可以映射到同一个数组元素。
-
ignore_missing
- (可选) 是否忽略数组字段缺失的事件。默认值为
false
,如果指定的字段不存在,则处理事件将失败。将其设置为true
以忽略此条件。 -
overwrite_keys
- 如果映射中指定的 target 字段已存在,则是否覆盖它们。默认值为
false
,如果 target 字段已存在,则处理将失败。 -
fail_on_error
- (可选) 如果设置为
true
且发生错误,则事件的更改将被还原,并返回原始事件。如果设置为false
,则处理将继续,即使有错误。默认值为true
。 -
omit_empty
- (可选) 是否从数组中提取空值。如果设置为
true
,则 target 字段将不会设置为空值,而是保留为未设置状态。空字符串 (""
)、空数组 ([]
) 或空对象 ({}
) 被视为空值。默认值为false
。