配置 Azure Monitor 数据收集规则

已完成

规范化日志数据的另一种方法是在引入时转换数据。 这使得可以将数据以解析格式存储,以便在 Microsoft Sentinel 中使用。

Azure Monitor 中的数据收集规则

数据收集规则(DCR)在 Azure Monitor 中提供类似于 ETL 的管道,允许定义应处理传入 Azure Monitor 的数据的方式。 根据工作流的类型,DCR 可以指定应发送数据的位置,并在数据存储在 Azure Monitor 日志中之前筛选或转换数据。 某些数据收集规则将由 Azure Monitor 创建和管理,而你可以创建其他规则来根据特定要求自定义数据收集。

数据收集规则的类型

Azure Monitor 中当前有两种类型的数据收集规则:

  • 标准 DCR。 用于将数据发送到 Azure Monitor 的不同工作流。 当前支持的工作流是 Azure Monitor 代理和自定义日志。

  • 工作区转换 DCR。 与 Log Analytics 工作区配合使用,将数据引入时的转换应用于当前不支持 DCR 的工作流。

转换

数据收集规则(DCR)中的转换允许在将数据存储在 Log Analytics 工作区之前筛选或修改传入数据。 数据转换是使用 Kusto 查询语言 (KQL) 语句定义的,该语句分别应用于数据源中的每个条目。 它必须了解传入数据的格式,并在目标表的结构中创建输出。

转换结构

输入流由一个名为 的虚拟表表示,其列与输入数据流定义匹配。 下面是转换的典型示例。 此示例包括以下功能:

  • 使用 where 语句筛选传入数据
  • 使用扩展运算符添加新列
  • 使用项目运算符设置输出的格式以匹配目标表的列
source  
| where severity == "Critical" 
| extend Properties = parse_json(properties)
| project
    TimeGenerated = todatetime(["time"]),
    Category = category,
    StatusDescription = StatusDescription,
    EventName = name,
    EventId = tostring(Properties.EventId)