将自定义数据映射到 ECS编辑

通用模式有助于您关联和使用来自各种来源的数据。

大多数 Elastic 模块和解决方案(7.0 及更高版本)的字段都映射到 Elastic Common Schema。您可能希望将来自其他实现的数据映射到 ECS,以帮助您在所有产品和解决方案中关联数据。

开始之前编辑

在开始转换之前,请确保您了解以下基础知识。

核心和扩展级别编辑

请确保您了解核心字段和扩展字段之间的区别,如指南和最佳实践中所述。

核心字段和扩展字段在ECS 字段参考中进行了文档记录,或者,对于所有字段的单页表示,请参见生成的字段 CSV 文件

映射现有实现的方法编辑

以下是如何将现有实现转换为 ECS 的推荐方法。

  1. 查看原始事件中的每个字段,并将其映射到相关的 ECS 字段。

    • 首先将您的字段映射到相关的 ECS 核心字段。
    • 如果不存在相关的 ECS 核心字段,请将您的字段映射到相关的 ECS 扩展字段。
    • 如果不存在相关的 ECS 扩展字段,请考虑保留您的字段及其原始详细信息,或者可能使用 ECS 命名指南对其进行重命名,并尝试将一个或多个原始事件字段映射到它。
  2. 查看每个 ECS 核心字段,并尝试填充它。

    • 再次查看原始事件数据
    • 考虑根据其他元数据(例如静态信息)填充字段(例如,即使身份验证事件未提及“身份验证”一词,也添加 event.category:authentication
    • 考虑捕获其他环境元数据,例如有关主机、容器或云实例的信息。
  3. 查看您正在使用的任何字段集中的其他扩展字段,并尝试填充它。
  4. ecs.version 设置为您要遵循的模式版本。这将使您能够在将来顺利升级您的源、管道和内容(如仪表板)。
使用电子表格规划您的迁移编辑

使用电子表格来规划从现有源字段到 ECS 的迁移是一种常见的做法。这是一种在同事之间有条不紊地解决每个字段的好方法。

为了帮助您规划迁移,Elastic 提供了一个电子表格模板。您可以使用此电子表格的 CSV 版本自动创建 Elasticsearch 摄取管道。无论您的摄取方法如何,这都是将自定义数据映射到 ECS 最简单、最一致的方法。

使用 Elasticsearch 摄取管道将自定义数据映射到 ECS编辑

使用 Kibana 的 从 CSV 创建管道 功能从将自定义数据映射到 ECS 字段的 CSV 文件中创建 Elasticsearch 摄取管道。

在开始之前,请确保您满足在 Kibana 中创建摄取管道的先决条件

  1. 下载或复制电子表格模板
  2. 使用电子表格将自定义数据映射到 ECS 字段。虽然您可以包含其他列,但 Kibana 只处理以下支持的列。其他列将被忽略。

    支持的列
    source_field
    (必需) 来自自定义数据的 JSON 字段键。支持点表示法。具有空 source_field 的行将被跳过。
    destination_field

    (必需) ECS 字段名称。支持点表示法。要执行 format_action 而不重命名字段,请将 destination_field 留空。

    如果 destination field@timestamp,则无论提供任何值,都将使用 format_actionparse_timestamptimestamp_formatUNIX_MS。这有助于防止下游转换问题。

    format_action

    (可选) 要对字段值应用的转换。

    有效值
    (空)
    不进行转换。
    parse_timestamp
    格式化日期或时间值。要指定格式,请使用 timestamp_format
    to_array
    转换为数组。
    to_boolean
    转换为布尔值。
    to_float
    转换为浮点数。
    to_integer
    转换为整数
    to_string
    转换为字符串。
    lowercase
    转换为小写。
    uppercase
    转换为大写。
    timestamp_format
    (可选) 与 parse_timestamp 格式操作一起使用的日期和时间格式。有效值为 UNIXUNIX_MSISO8601TAI64NJava 时间模式。默认值为 UNIX_MS
    copy_action

    (可选) 对 source_field 执行的操作。有效值为

    有效值
    (空)
    (默认) 使用默认操作。您将在 Kibana 的 从 CSV 创建管道 页面上指定默认操作。
    copy
    复制 source_field 以用作 destination_field。最终文档包含这两个字段。
    rename
    source_field 重命名为 destination_field。最终文档只包含 destination_field
  3. 保存并以 CSV 文件形式导出电子表格。

    Kibana 的 从 CSV 创建管道 功能只支持不超过 100 MB 的 CSV 文件。

  4. 在 Kibana 中,打开主菜单,然后单击 堆栈管理 > 摄取管道 > 创建管道 > 从 CSV 创建新管道

    Create Pipeline from CSV in Kibana
  5. 从 CSV 创建管道 页面上,上传您的 CSV 文件。
  6. 默认操作 下,选择 复制字段名称重命名字段 选项。

    对于 复制字段名称 选项,Kibana 默认情况下会复制 source_field 以用作 destination_field。最终文档包含这两个字段。

    对于 重命名字段 选项,默认情况下会将 source_field 重命名为 destination_field。最终文档只包含 destination_field

    您可以使用 CSV 的 copy_action 列覆盖此默认值。

  7. 单击 处理 CSV

    Kibana 显示从您的 CSV 文件生成的摄取管道的 JSON 预览。

    Preview pipeline from CSV in Kibana
  8. 要创建管道,请单击 继续创建管道
  9. 创建管道 页面上,您可以向管道添加其他摄取处理器。

    完成后,单击 创建管道