在 Azure Monitor 中创建和编辑数据收集规则 (DCR) 和关联
有多种方法可在 Azure Monitor 中创建数据收集规则 (DCR)。 在某些情况下,Azure Monitor 可以根据你在 Azure 门户中配置的设置创建和管理 DCR。 在其他情况下,你需要创建自己的 DCR 来自定义特定方案。
本文介绍用于创建和编辑 DCR 的不同方法。 有关 DCR 本身的内容,请参阅 Azure Monitor 中的数据收集规则的结构。
权限
需要以下权限才能创建 DCR 和关联:
内置角色 | 作用域 | 原因 |
---|---|---|
监视参与者 |
|
创建或编辑 DCR,将规则分配给计算机,部署关联。 |
虚拟机参与者 Azure Connected Machine 资源管理员 |
|
在 VM(虚拟机)上部署代理扩展。 |
负责关于 Microsoft.Resources/deployments/ 操作的任何角色 |
|
部署 Azure 资源管理器模板。 |
用于创建 DCR 的自动化方法
下表列出了使用 Azure 门户创建数据收集方案的方法,其中会为你创建 DCR。 在这些情况下,无需直接与 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 可用的数据源类型,即 Windows 或 Linux。 如果指定“无”,则可以使用两者。 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 自动收集 DCR 指标,可使用指标资源管理器分析这些指标,如其他 Azure 资源的平台指标。 有关详细信息,请参阅在 Azure Monitor 中监视和排查 DCR 数据收集问题
发送到 Log Analytics 工作区的指标存储在 AzureMetricsV2
表中。 请使用 Log Analytics 资源管理器查看该表并确认是否正在引入数据。
有关详细信息,请参阅 Azure Monitor 中的 Log Analytics 概述。