你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

在 Azure Monitor 中创建和编辑数据收集规则 (DCR) 和关联

有多种方法可在 Azure Monitor 中创建数据收集规则 (DCR)。 在某些情况下,Azure Monitor 可以根据你在 Azure 门户中配置的设置创建和管理 DCR。 在其他情况下,你需要创建自己的 DCR 来自定义特定方案。

本文介绍用于创建和编辑 DCR 的不同方法。 有关 DCR 本身的内容,请参阅 Azure Monitor 中的数据收集规则的结构

权限

需要以下权限才能创建 DCR 和关联:

内置角色 作用域 原因
监视参与者
  • 订阅和/或
  • 资源组和/或
  • 现有 DCR
创建或编辑 DCR,将规则分配给计算机,部署关联。
虚拟机参与者
Azure Connected Machine 资源管理员
  • 虚拟机、虚拟机规模集
  • 已启用 Azure Arc 的服务器
在 VM(虚拟机)上部署代理扩展。
负责关于 Microsoft.Resources/deployments/ 操作的任何角色
  • 订阅和/或
  • 资源组和/或
  • 现有 DCR
部署 Azure 资源管理器模板。

用于创建 DCR 的自动化方法

下表列出了使用 Azure 门户创建数据收集方案的方法,其中会为你创建 DCR。 在这些情况下,无需直接与 DCR 本身交互。

场景 资源 说明
监视虚拟机 启用 VM 见解概述 在 VM 上启用 VM 见解后,将会安装 Azure Monitor 代理,然后创建 DCR 并将其与 VM 关联。 此 DCR 收集一组预定义的性能计数器,不应对其进行修改。
容器见解 启用容器见解 在 Kubernetes 群集上启用容器见解后,将会安装 Azure Monitor 代理的容器化版本,并根据所选的配置创建与群集关联的 DCR 来收集数据。 可能需要修改此 DCR 才能添加转换。
工作区转换 使用 Azure 门户在工作区数据收集规则中添加转换 为 Log Analytics 工作区中任何受支持的表创建转换。 此转换是在链接到工作区的 DCR 中指定的。 然后,此转换将应用于从任何尚未利用 DCR 的旧工作负载发送到该表的任何数据。

为日志创建 DCR

若要使用 Azure CLI、PowerShell、API 或 ARM 模板创建数据收集规则,请从其中一个示例 DCR 开始创建 JSON 文件。 使用 Azure Monitor 中的数据收集规则结构中的信息针对特定环境和要求修改 JSON 文件。

重要

在目标 Log Analytics 工作区或 Azure Monitor 工作区所在的同一区域中创建数据收集规则。 可以将数据收集规则关联到租户中任何订阅或资源组中的计算机或容器。 若要跨租户发送数据,必须先启用 Azure Lighthouse

使用 Azure 门户进行创建

Azure 门户在为虚拟机和虚拟机规模集创建 DCR 方面提供了简化的体验。 使用此方法时,除非想要实现转换等高级功能,否则无需了解 DCR 的结构。 使用 Azure Monitor 代理收集数据中介绍了使用各种数据源创建此 DCR 的过程。

重要

在目标 Log Analytics 工作区或 Azure Monitor 工作区所在的同一区域中创建数据收集规则。 可以将数据收集规则关联到租户中任何订阅或资源组中的计算机或容器。 若要跨租户发送数据,必须先启用 Azure Lighthouse

在 Azure 门户中的“监视器”菜单上,选择“数据收集规则”>“创建”以打开 DCR 创建页面。

显示新数据收集规则的“创建”按钮的屏幕截图。

基本”页面包含有关 DCR 的基本信息。

显示新数据收集规则的“基本”选项卡的屏幕截图。

设置 说明
规则名称 DCR 的名称。 此名称应该是有助于识别规则的描述性名称。
订阅 用于存储 DCR 的订阅。 此订阅不需要与虚拟机订阅相同。
资源组 用于存储 DCR 的资源组。 此资源组不需要是虚拟机所在的同一个资源组。
区域 存储 DCR 的区域。 此区域必须与 DCR 目标中使用的任何 Log Analytics 工作区或 Azure Monitor 工作区相同。 如果在不同的区域中有工作区,则可以创建与同一组计算机关联的多个 DCR。
平台类型 指定 DCR 可用的数据源类型,即 WindowsLinux。 如果指定“”,则可以使用两者。 1
数据收集终结点 指定用于收集数据的数据收集终结点 (DCE)。 仅当使用 Azure Monitor 专用链接时,才需要 DCE。 此 DCE 必须与 DCR 位于同一个区域。 有关详细信息,请参阅如何根据部署设置数据收集终结点

1 此选项设置 DCR 中的 kind 属性。 可以为此属性设置其他值,但这些值在门户中不可用。

添加资源

“资源”页面允许添加将与 DCR 关联的资源。 单击“+ 添加资源”以选择资源。 Azure Monitor 代理将自动安装在任何尚未安装它的资源上。

重要

门户可以在目标资源上启用系统分配的托管标识,还包括现有的用户分配的标识(如有)。 对于现有应用程序,除非在请求中指定用户分配的标识,否则计算机将默认使用系统分配的标识。

显示新数据收集规则的“资源”选项卡的屏幕截图。

如果监视的计算机与目标 Log Analytics 工作区不在同一区域,并且要收集需要 DCE 的数据类型,请选择“启用数据收集终结点”并选择每个受监视计算机所在区域中的终结点。 如果受监视的计算机与目标 Log Analytics 工作区位于同一区域,或者如果不需要 DCE,请不要在“资源”选项卡上选择数据收集终结点。

添加数据源

收集和传递”页面允许为 DCR 添加和配置数据源以及每个数据源的目标。

屏幕元素 说明
数据源 选择“数据源类型”,然后根据所选的数据源类型定义相关字段。 有关配置每种数据源的详细信息,请参阅数据源中的文章。
目标 为每个数据源添加一个或多个目标。 你可以选择多个相同或不同类型的目标。 例如,你可以选择多个 Log Analytics 工作区,这也称为多宿主。 请参阅每个数据类型的详细信息,了解它们支持的不同目标。

DCR 可以包含多个不同的数据源,单个 DCR 最多可包含 10 个数据源。 可以将不同的数据源合并到同一 DCR 中,但通常需要为不同的数据收集方案创建不同的 DCR。 有关如何整理 DCR 的建议,请参阅在 Azure Monitor 中创建和管理数据收集规则的最佳做法

注意

使用数据收集规则向导创建数据收集规则后,最多可能需要 5 分钟才能将数据发送到目标。

编辑 DCR

若要编辑 DCR,可以使用上一部分中介绍的任何方法,以使用修改后的 JSON 版本创建 DCR。

如果需要检索现有 DCR 的 JSON,则可以从 Azure 门户中 DCR 的 JSON 视图复制它。 还可以使用 API 调用来检索它,如以下 PowerShell 示例所示。

$ResourceId = "<ResourceId>" # Resource ID of the DCR to edit
$FilePath = "<FilePath>" # Store DCR content in this file
$DCR = Invoke-AzRestMethod -Path ("$ResourceId"+"?api-version=2022-06-01") -Method GET
$DCR.Content | ConvertFrom-Json | ConvertTo-Json -Depth 20 | Out-File -FilePath $FilePath

有关演练检索和编辑现有 DCR 的教程,请参阅教程:编辑数据收集规则 (DCR)

为指标导出创建 DCR

若要为指标导出创建数据收集规则,请使用 Azure 门户、Azure CLI、PowerShell、API 或 ARM 模板。

重要

若要将平台遥测数据发送到存储帐户或事件中心,资源、数据收集规则和目标存储帐户或事件中心必须全部位于同一区域中。

  1. 在 Azure 门户的“监视”菜单中,选择“数据收集规则”,然后选择“创建”。

  2. 若要创建 DCR 以收集平台指标数据,请选择页面顶部的链接。 屏幕截图显示了创建数据收集规则页面。

  3. 在“创建数据收集规则”页上,输入规则名称,为该 DCR 选择一个订阅资源组区域

  4. 如果要将指标发送到存储帐户或事件中心,请选择“启用托管标识”。

  5. 选择下一个一个屏幕截图,其中显示了“创建数据收集规则”页面的“基本信息”选项卡。

  6. 在“资源”页上,选择“添加资源”以添加要从中收集指标的资源。

  7. 选择“下一步”以前进到“收集和传递”选项卡。一个屏幕截图,其中显示了“创建数据收集规则”页面的“资源”选项卡。

  8. 选择“添加新数据集”。

  9. 将自动选择你在上一步中选择的资源的资源类型。 如果你想在将来使用此规则从多个资源类型收集指标,请添加更多资源类型。

  10. 选择“下一步: 目标”以前进到“目标”选项卡。一个屏幕截图,其中显示了“收集和传递”页面的“资源”选项卡。

  11. 若要将指标发送到 Log Analytics 工作区,请从“目标类型”下拉列表中选择“Azure Monitor 日志”。

    1. 选择要将指标发送到的订阅和 Log Analytics 工作区。
  12. 若要将指标发送到事件中心,请从“目标类型”下拉列表中选择“事件中心”。

    1. 选择订阅事件中心命名空间事件中心实例名称
  13. 若要将指标发送到存储帐户,请从“目标类型”下拉列表中选择“存储帐户”。

    1. 选择要在其中存储指标的订阅存储帐户Blob 容器。

    注意

    若要将指标发送到存储帐户或事件中心,生成指标的资源,DCR 和存储帐户或事件中心必须全部位于同一区域中。
    若要将指标发送到 Log Analytics 工作区,DCR 必须与 Log Analytics 工作区位于同一区域中。 生成指标的资源可以位于任何区域中。

    若要选择存储帐户或事件中心作为目标,必须在“基本信息”选项卡上为 DCR 启用托管标识。

  14. 选择“保存”,然后选择“查看 + 创建”。 一个屏幕截图,其中显示了“收集和传递”页面的“目标”选项卡。

创建 DCR 和 DCRA 后,第一个平台指标数据最多需要 30 分钟才会出现在 Log Analytics 工作区中。 在数据开始流动后,流向 Log Analytics 工作区、存储帐户或事件中心的平台指标时序的延迟约为 3 分钟,具体取决于资源类型。

验证数据流和故障排除

将为所有 DCR 自动收集 DCR 指标,可使用指标资源管理器分析这些指标,如其他 Azure 资源的平台指标。 有关详细信息,请参阅在 Azure Monitor 中监视和排查 DCR 数据收集问题

发送到 Log Analytics 工作区的指标存储在 AzureMetricsV2 表中。 请使用 Log Analytics 资源管理器查看该表并确认是否正在引入数据。 有关详细信息,请参阅 Azure Monitor 中的 Log Analytics 概述

后续步骤