使用 Azure Resource Graph 访问 Azure 更新管理器操作数据
从更新评估和安装等操作创建的日志由 Azure 更新管理器存储在 Azure Resource Graph 中。 Resource Graph 是 Azure 中的一项服务,旨在成为 Azure 服务详细信息的存储区,无需任何成本或部署要求。 更新管理器使用 Resource Graph 来存储其结果。 可以查看过去 7 天的更新评估历史记录,以及 Resource Graph 过去 30 天的更新安装历史记录。
本文介绍更新管理器中的日志结构,以及如何使用 Azure Resource Graph 资源管理器来分析日志以支持报表、可视化和导出需求。
日志结构
更新管理器将其所有操作的结果作为日志发送到 Azure Resource Graph 中,这些日志可供使用 30 天。 下面列出了要发送到 Azure Resource Graph 的日志的结构。
修补程序评估结果
表 patchassessmentresources
包含与计算机修补程序评估相关的资源。 下表描述了该评估的属性。
properties | 说明 |
---|---|
ID |
转发结果的 Azure 资源管理器 ID。 它类似于来宾 OS 评估的 REST API 路径。 通常为 <resourcePath>/patchAssessmentResults/latest 或 <resourcePath>/patchAssessmentResults/latest/softwarePatches/<update> 。 |
NAME |
如果 ID 的类型为 <resourcePath>/patchAssessmentResults/latest ,则记录包含完成评估操作的唯一 GUID。 如果为 <resourcePath>/patchAssessmentResults/latest/softwarePatches/<update> ,则记录包含更新名称或标签。 |
TYPE |
指定评估的日志类型。 如果类型为 patchassessmentresults ,则记录会提供具有数字聚合统计信息的 OS 评估摘要。 如果类型为 patchassessmentresults/softwarepatches ,则记录描述可用于资源的特定 OS 更新。 |
TENANTID |
Azure VM 或已启用 Azure Arc 的服务器资源的 Azure 租户 ID。 |
KIND |
特意留空以备将来使用。 |
LOCATION |
Azure VM 或已启用 Azure Arc 的服务器资源存在的 Azure 云区域。 |
RESOURCEGROUP |
托管 Azure VM 或已启用 Azure Arc 的服务器资源的 Azure 资源组。 |
SUBSCRIPTIONID |
托管 Azure VM 或已启用 Azure Arc 的服务器资源的 Azure 订阅 ID。 |
MANAGEDBY |
特意留空以备将来使用。 |
SKU |
特意留空以备将来使用。 |
PLAN |
特意留空以备将来使用。 |
PROPERTIES |
捕获操作的详细信息(JSON 格式)。 有关详细信息,请参阅此表。 |
TAGS |
特意留空以备将来使用。 |
IDENTITY |
特意留空以备将来使用。 |
ZONES |
特意留空以备将来使用。 |
EXTENDEDLOCATION |
特意留空以备将来使用。 |
patchassessmentresources 属性的说明
如果资源类型的属性为 patchassessmentresources
,则它包括下表中的信息。
值 | 说明 |
---|---|
rebootPending |
用于指定特定更新是否需要 OS 重新启动才能完成安装的标志。 由计算机的 OS 更新服务或包管理器提供。 如果 OS 包管理器或更新服务不需要重启,则该字段的值将设置为 false 。 |
patchServiceUsed |
计算机上用于安装更新的 OS 服务。 适用于 Windows 更新服务或 Windows Server 更新服务的 WU-WSUS 。 对于 Linux,值为 OS 包管理器,例如 YUM 、APT 或 Zypper 。 |
osType |
表示操作系统的类型:Windows 或 Linux 。 |
startDateTime |
表示 OS 更新评估任务在计算机上开始执行的时间戳 (UTC)。 |
lastModifiedDateTime |
表示上次更新记录的时间戳 (UTC)。 |
startedBy |
标识用户或 Azure 服务是否触发了 OS 更新安装。 有关操作的详细信息,请参阅 Azure 活动日志。 |
errorDetails |
从计算机的 OS 包管理器或更新服务执行更新安装时生成的前五条错误消息。 |
availablePatchCountByClassification |
根据 OS 供应商,按照特定更新所属的类别进行的 OS 更新数。 计算机的 OS 更新服务或包管理器生成信息。 如果 OS 包管理器或更新服务未提供类别的详细信息,则该值为 Others (适用于 Linux)或 Updates (适用于 Windows Server)。 |
如果资源类型的属性为 patchassessmentresults/softwarepatches
,则它包括下表中的信息。
值 | 说明 |
---|---|
lastModifiedDateTime |
表示上次更新记录的时间戳 (UTC)。 |
publishedDateTime |
表示 OS 供应商何时提供特定更新的时间戳。 计算机的 OS 更新服务或包管理器生成信息。 如果 OS 包管理器或更新服务未提供 OS 供应商提供更新时间的详细信息,则值为 null。 目前,Linux 更新时此值不可用。 |
classifications |
根据 OS 供应商的不同,特定更新所属的类别。 计算机的 OS 更新服务或包管理器生成信息。 如果 OS 包管理器或更新服务未提供类别的详细信息,则该值为 Others (适用于 Linux)或 Updates (适用于 Windows Server)。 |
rebootRequired |
值指示特定更新是否需要 OS 重新启动才能完成安装。 计算机的 OS 更新服务或包管理器生成信息。 如果 OS 包管理器或更新服务不需要重新启动,则该值为 false 。 |
rebootBehavior |
如果更新管理器可以重新启动目标计算机,则 OS 更新安装中设置的行为会在配置更新部署时运行作业。 |
patchName |
计算机的 OS 包管理器或更新服务为特定更新生成的名称或标签。 |
Kbid |
如果计算机的 OS 为 Windows Server,则值将包含 Windows 更新服务提供的更新的唯一 KB ID。 |
version |
如果计算机的 OS 是 Linux,则该值包括 Linux 包管理器提供的更新的版本详细信息。 例如 1.0.1.el7.3 。 |
修补程序安装结果
表 patchinstallationresources
包含与计算机修补程序评估相关的资源。 下表描述了该评估的属性。
properties | 说明 |
---|---|
ID |
转发结果的 Azure 资源管理器 ID。 它类似于来宾 OS 评估的 REST API 路径。 通常为 <resourcePath>/patchInstallationResults/<GUID> 或 <resourcePath>/patchAssessmentResults/latest/softwarePatches/<update> 。 |
NAME |
如果 ID 的类型为 <resourcePath>/patchInstallationResults ,则记录包含完成更新操作的唯一 GUID。 如果为 <resourcePath>/patchInstallationResults/softwarePatches/<update> ,则记录将包含计算机上安装的更新名称或标签。 |
TYPE |
指定评估的日志类型。 如果类型为 patchinstallationresults ,则记录将提供 OS 安装摘要和数字聚合统计信息。 如果类型为 patchinstallationresults/softwarepatches ,则记录将描述可为资源安装的特定 OS 更新。 |
TENANTID |
Azure VM 或已启用 Azure Arc 的服务器资源的 Azure 租户 ID。 |
KIND |
特意留空以备将来使用。 |
LOCATION |
Azure VM 或已启用 Azure Arc 的服务器资源存在的 Azure 云区域。 |
RESOURCEGROUP |
托管 Azure VM 或已启用 Azure Arc 的服务器资源的 Azure 资源组。 |
SUBSCRIPTIONID |
托管 Azure VM 或已启用 Azure Arc 的服务器资源的 Azure 订阅 ID。 |
MANAGEDBY |
特意留空以备将来使用。 |
SKU |
特意留空以备将来使用。 |
PLAN |
特意留空以备将来使用。 |
PROPERTIES |
捕获操作的详细信息(JSON 格式)。 有关详细信息,请参阅此表。 |
TAGS |
特意留空以备将来使用。 |
IDENTITY |
特意留空以备将来使用。 |
ZONES |
特意留空以备将来使用。 |
EXTENDEDLOCATION |
特意留空以备将来使用。 |
patchinstallationresults 属性的说明
如果资源类型的属性为 patchinstallationresults
,则它包括下表中的信息。
值 | 说明 |
---|---|
installationActivityId |
OS 更新安装运行的唯一 GUID。 |
maintenanceWindowExceeded |
如果更新安装运行超过定义的维护时段,则值为 True 或 False 。 |
lastModifiedDateTime |
表示上次更新记录的时间戳 (UTC)。 |
notSelectedPatchCount |
未选择在更新部署中安装的但在计算机上可用的 OS 更新数。 |
installedPatchCount |
已在更新部署中指定的且已成功安装的 OS 更新数。 |
excludedPatchCount |
已排除在更新部署中安装的但在计算机上可用的 OS 更新数。 |
pendingPatchCount |
已在更新部署中指定的、仍在等待安装的 OS 更新数。 |
patchServiceUsed |
计算机上用于安装更新的 OS 服务。 适用于 Windows 更新服务或 Windows Server 更新服务的 WU-WSUS 。 对于 Linux,值为 OS 包管理器,例如 YUM 、APT 或 Zypper 。 |
failedPatchCount |
已在更新部署中指定的但无法成功安装的 OS 更新数。 |
startDateTime |
表示 OS 更新安装任务在计算机上开始执行的时间戳 (UTC)。 |
rebootStatus |
需要重启 OS 才能完成更新安装时 OS 更新服务或包管理器中的信息。 状态值为 NotNeeded (无需重启)、Required (需要 OS 重启才能完成)、Started (已启动重启)、Failed (无法重启 OS)和 Completed (已成功重启)。 |
startedBy |
标识用户或 Azure 服务是否触发了 OS 更新安装。 有关操作的详细信息,请参阅 Azure 活动日志。 |
status |
OS 更新安装运行的状态。 值可以是 NotStarted 、InProgress 、Failed 、Succeeded 和 CompletedWithWarnings 。 如果一个或多个 OS 更新安装失败,则更新安装运行被视为 Failed 状态。 |
osType |
表示操作系统的类型:Windows 或 Linux 。 |
errorDetails |
包括从计算机的 OS 包管理器或更新服务运行更新安装时生成的前五条错误消息。 |
maintenanceRunId |
此值用作自动 VM 来宾修补或计划运行 ID(而不是定期更新)的维护运行标识符。 |
如果资源类型的属性为 patchinstallationresults/softwarepatches
,则它包括下表中的信息。
值 | 说明 |
---|---|
installationState |
特定 OS 更新的安装状态。 值为 Installed 、Failed 、Pending 、NotSelected 和 Excluded 。 |
lastModifiedDateTime |
表示上次更新记录的时间戳 (UTC)。 |
publishedDateTime |
表示 OS 供应商何时提供特定更新的时间戳。 计算机的 OS 更新服务或包管理器生成信息。 如果 OS 包管理器或更新服务未提供 OS 供应商提供更新时间的详细信息,则值为 null。 |
classifications |
根据计算机的 OS 更新服务或包管理器提供的 OS 供应商而定的特定更新所属的类别。 如果 OS 包管理器或更新服务未提供类别的详细信息,则该字段的值为 Others (适用于 Linux)和 Updates (适用于 Windows Server)。 |
rebootRequired |
用于指定特定更新是否需要 OS 重新启动才能完成安装的标志,由计算机的 OS 更新服务或包管理器提供。 如果 OS 包管理器或更新服务未提供有关需要重新启动 OS 的信息,则将该字段的值设置为 false 。 |
rebootBehavior |
OS 更新安装中设置的行为按用户运行作业,与允许更新管理器重新启动 OS 有关。 |
patchName |
计算机的 OS 包管理器或更新服务提供的特定更新的名称或标签。 |
Kbid |
如果计算机的 OS 为 Windows Server,则值将包含 Windows 更新服务提供的更新的唯一 KB ID。 |
version |
如果计算机的 OS 是 Linux,则该值包括 Linux 包管理器提供的更新的版本详细信息。 例如 1.0.1.el7.3 。 |
维护资源
表 maintenanceresources
包含与维护配置相关的资源。 下表描述了该评估的属性。
properties | 说明 |
---|---|
ID |
转发结果的 Azure 资源管理器 ID。 它类似于用于创建维护配置的 REST API 路径。 |
NAME |
如果 ID 的类型为 <resourcePath>/applyupdates ,则记录包含维护运行的唯一 GUID。 如果为 <resourcePath>/configurationassignments ,则记录包含将维护配置分配给 Azure 或 Azure Arc VM。 |
TYPE |
指定评估的日志类型。 如果类型为 applyupdates ,则记录提供计算机级别的维护运行记录的详细信息。 如果类型为 configurationassignments ,则记录描述 Azure VM 或 Azure Arc VM 与维护配置之间的链接。 |
TENANTID |
Azure VM 或已启用 Azure Arc 的服务器资源的 Azure 租户 ID。 |
KIND |
特意留空以备将来使用。 |
LOCATION |
Azure VM 或已启用 Azure Arc 的服务器资源存在的纯云区域。 |
RESOURCEGROUP |
托管 Azure VM 或已启用 Azure Arc 的服务器资源的 Azure 资源组。 |
SUBSCRIPTIONID |
托管 Azure VM 或已启用 Azure Arc 的服务器资源的 Azure 订阅 ID。 |
MANAGEDBY |
特意留空以备将来使用。 |
SKU |
特意留空以备将来使用。 |
PLAN |
特意留空以备将来使用。 |
PROPERTIES |
捕获操作的详细信息(JSON 格式)。 有关详细信息,请参阅此表。 |
TAGS |
特意留空以备将来使用。 |
IDENTITY |
特意留空以备将来使用。 |
ZONES |
特意留空以备将来使用。 |
EXTENDEDLOCATION |
特意留空以备将来使用。 |
applyupdates 属性的说明
如果资源类型的属性为 applyupdates
,则它包括下表中的信息。
值 | 说明 |
---|---|
maintenanceConfigurationId |
应用的维护配置的 Azure 资源管理器 ID。 |
maintenanceScope |
应用的维护配置的维护范围。 |
resourceId |
ARC/Azure VM 的 Azure 资源管理器模板资源 ID。 |
correlationId |
维护/计划运行的计划运行 ID。 此信息可用于查找属于同一计划的所有 VM。 |
startDateTime |
计划的开始日期和时间。 |
endDateTime |
计划的结束日期和时间。 |
如果资源类型的属性为 configurationassignments
,则它包括下表中的信息。
值 | 说明 |
---|---|
resourceId |
ARC/Azure VM 的 Azure 资源管理器资源 ID |
maintenanceConfigurationId |
应用的维护配置的 Azure 资源管理器 ID |
后续步骤
- 有关访问 Azure 更新管理器操作数据的示例查询,请参阅示例 Azure Resource Graph 查询以访问 Azure 更新管理器操作数据。
- 若要排查 Azure 更新管理器的问题,请参阅排查 Azure 更新管理器的问题。