将自定义数据映射到 ECS
编辑将自定义数据映射到 ECS
编辑通用架构有助于您关联和使用来自各种来源的数据。
大多数 Elastic 模块和解决方案(7.0 及更高版本)的字段都映射到 Elastic 通用架构。您可能希望将来自其他实现的数据映射到 ECS,以帮助您关联所有产品和解决方案中的数据。
开始之前
编辑在开始转换之前,请确保您了解以下基本知识。
核心级别和扩展级别
编辑请确保您了解核心字段和扩展字段之间的区别,如指南和最佳实践中所述。
核心字段和扩展字段在ECS 字段参考中进行了记录,或者,要查看所有字段的单页表示形式,请参阅生成的字段 CSV 文件。
映射现有实现的方法
编辑以下是将现有实现转换为 ECS 的推荐方法。
-
查看原始事件中的每个字段,并将其映射到相关的 ECS 字段。
- 首先将您的字段映射到相关的 ECS 核心字段。
- 如果不存在相关的 ECS 核心字段,则将您的字段映射到相关的 ECS 扩展字段。
- 如果不存在相关的 ECS 扩展字段,请考虑保留原始详细信息的字段,或者可能使用 ECS 命名指南对其进行重命名,并尝试将原始事件字段中的一个或多个映射到它。
-
查看每个 ECS 核心字段,并尝试填充它。
- 再次查看原始事件数据
- 考虑根据其他元数据(例如静态信息)填充字段(例如,即使您的身份验证事件未提及“身份验证”一词,也添加
event.category:authentication
) - 考虑捕获其他环境元数据,例如有关主机、容器或云实例的信息。
- 查看您已使用的任何字段集中其他扩展字段,并尝试填充它。
- 将
ecs.version
设置为要符合的架构版本。这将使您能够在将来平滑地升级您的源、管道和内容(如仪表板)。
使用电子表格规划迁移
编辑使用电子表格规划从预先存在的源字段到 ECS 的迁移是一种常见做法。这是在同事之间系统地处理每个字段的好方法。
为了帮助您规划迁移,Elastic 提供了一个电子表格模板。您可以使用此电子表格的 CSV 版本自动创建 Elasticsearch 摄取管道。无论您的摄取方法如何,这都是将自定义数据映射到 ECS 的最简单、最一致的方法。
使用 Elasticsearch 摄取管道将自定义数据映射到 ECS
编辑使用 Kibana 的从 CSV 创建管道功能从将自定义数据映射到 ECS 字段的 CSV 文件创建 Elasticsearch 摄取管道。
在开始之前,请确保您满足在 Kibana 中创建摄取管道的先决条件。
- 下载或复制电子表格模板。
-
使用电子表格将您的自定义数据映射到 ECS 字段。虽然您可以包含其他列,但 Kibana 仅处理以下支持的列。其他列将被忽略。
支持的列
-
source_field
- (必填)来自自定义数据的 JSON 字段键。支持点表示法。具有空
source_field
的行将被跳过。 -
destination_field
-
(必填)ECS 字段名称。支持点表示法。要执行不重命名字段的
format_action
,请将destination_field
保留为空。如果
destination field
为@timestamp
,则无论提供什么值,都会使用format_action
的parse_timestamp
和timestamp_format
的UNIX_MS
。这有助于防止下游转换问题。 -
format_action
-
(可选)要应用于字段值的转换。
有效值
- (空)
- 不进行转换。
-
parse_timestamp
- 格式化日期或时间值。要指定格式,请使用
timestamp_format
。 -
to_array
- 转换为数组。
-
to_boolean
- 转换为布尔值。
-
to_float
- 转换为浮点数。
-
to_integer
- 转换为整数
-
to_string
- 转换为字符串。
-
lowercase
- 转换为小写。
-
uppercase
- 转换为大写。
-
timestamp_format
- (可选)与
parse_timestamp
格式操作一起使用的日期和时间格式。有效值为UNIX
、UNIX_MS
、ISO8601
、TAI64N
和Java 时间模式。默认为UNIX_MS
。 -
copy_action
-
(可选)对
source_field
采取的操作。有效值为有效值
- (空)
- (默认)使用默认操作。您将在 Kibana 的从 CSV 创建管道页面上稍后指定默认操作。
-
copy
- 复制
source_field
以用作destination_field
。最终文档包含这两个字段。 -
rename
- 将
source_field
重命名为destination_field
。最终文档仅包含destination_field
。
-
-
保存并以 CSV 文件格式导出电子表格。
Kibana 的从 CSV 创建管道功能仅支持最大 100 MB 的 CSV 文件。
-
在 Kibana 中,打开主菜单并点击堆栈管理 > 摄取管道 > 创建管道 > 从 CSV 创建新管道。
- 在从 CSV 创建管道页面上,上传您的 CSV 文件。
-
在默认操作下,选择复制字段名称或重命名字段选项。
对于复制字段名称选项,Kibana 默认情况下会复制
source_field
以用作destination_field
。最终文档包含这两个字段。对于重命名字段选项,默认情况下会将
source_field
重命名为destination_field
。最终文档仅包含destination_field
。您可以使用 CSV 的
copy_action
列覆盖此默认值。 -
点击处理 CSV。
Kibana 显示从您的 CSV 文件生成的摄取管道的 JSON 预览。
- 要创建管道,请点击继续创建管道。
-
在创建管道页面上,您可以向管道添加其他摄取处理器。
完成后,点击创建管道。