将自定义数据映射到 ECS
编辑将自定义数据映射到 ECS
编辑一个通用的模式有助于您关联和使用来自各种来源的数据。
大多数 Elastic 模块和解决方案(7.0 及更高版本)的字段都已映射到 Elastic Common Schema。您可能希望将其他实现的数据映射到 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
,则使用parse_timestamp
的format_action
和UNIX_MS
的timestamp_format
,而不管提供的任何值。这有助于防止下游转换问题。 -
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 预览。
- 要创建管道,请单击 继续创建管道。
-
在 创建管道页面上,您可以向管道添加其他摄取处理器。
完成后,单击 创建管道。