你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
排查更改跟踪和清单问题
重要
使用 Log Analytics 代理的更改跟踪和清单功能已于 2024 年 8 月 31 日停用,在 2025 年 2 月 1 日之前将提供有限支持。 建议使用 Azure Monitoring 代理作为新的支持代理。 遵循有关从使用 Log Analytics 更改跟踪和库存到使用 Azure Monitoring Agent 版本更改跟踪和库存的迁移指南。
本文介绍了如何排查和解决 Azure 自动化更改跟踪和库存的问题。 有关更改跟踪和库存的一般信息,请参阅更改跟踪和库存概述。
常规错误
场景:计算机已注册到其他帐户
问题
看到以下错误消息:
Unable to Register Machine for Change Tracking, Registration Failed with Exception System.InvalidOperationException: {"Message":"Machine is already registered to a different account."}
原因
计算机已部署到另一个工作区以进行更改跟踪。
解决
请确保你的计算机向正确的工作区报告。 有关如何对此进行验证的指导,请参阅验证代理与 Azure Monitor 的连接。 此外,请确保此工作区已链接到 Azure 自动化帐户。 若要进行验证,请转到自动化帐户,选择“相关资源”下的“链接的工作区” 。
确保链接到自动化帐户的 Log Analytics 工作区中显示计算机。 在 Log Analytics 工作区中运行以下查询。
Heartbeat | summarize by Computer, Solutions
如果查询结果中未显示你的计算机,则表示该计算机最近尚未签入。 可能存在本地配置问题。 应重新安装 Log Analytics 代理。
如果你的计算机在查询结果中列出,请在“Solutions”属性下验证是否列出了“changeTracking”。 这可验证它是否已注册到“更改跟踪和清单”。 如果未注册,请检查是否存在范围配置问题。 范围配置决定了为“更改跟踪和清单”配置哪些计算机。 若要配置目标计算机的范围配置,请参阅从自动化帐户启用“更改跟踪和清单”。
在工作区中运行此查询。
Operation | where OperationCategory == 'Data Collection Status' | sort by TimeGenerated desc
如果结果为
Data collection stopped due to daily limit of free data reached. Ingestion status = OverQuota
,则表示工作区中定义的配额已满,这导致无法保存数据。 在工作区中,转到“使用情况和预估成本”。 选择允许你使用更多数据的新“定价层”,或者单击“每日上限”并删除上限。
如果问题仍未解决,请遵循部署 Windows 混合 Runbook 辅助角色中的步骤来为 Windows 重新安装混合辅助角色。 对于 Linux,请按照部署 Linux 混合 Runbook 辅助角色中的步骤操作。
Windows
方案:未显示 Windows 计算机的更改跟踪和库存记录
问题
对于已启用更改跟踪和库存功能的 Windows 计算机,你未看到任何更改跟踪和库存结果。
原因
此错误的可能原因如下:
- 适用于 Windows 的 Azure Log Analytics 代理未运行。
- 与自动化帐户的通信被阻止。
- 未下载更改跟踪和库存管理包。
- 要启用的 VM 可能来自某台克隆的计算机,但尚未通过系统准备工具 (sysprep) 准备该计算机以使其安装有适用于 Windows 的 Log Analytics 代理。
解决方法
在 Log Analytics 代理计算机上,转到 C:\Program Files\Microsoft Monitoring Agent\Agent\Tools 并运行以下命令:
net stop healthservice
StopTracing.cmd
StartTracing.cmd VER
net start healthservice
如果仍需帮助,可以收集诊断信息并联系支持人员。
注意
默认情况下,Log Analytics 代理会启用错误跟踪。 若要如上例所示启用详细错误消息,请使用 VER
参数。 要进行信息跟踪,请在调用 StartTracing.cmd
时使用 INF
。
适用于 Windows 的 Log Analytics 代理未运行
验证适用于 Windows 的 Log Analytics 代理 (HealthService.exe) 是否正在计算机上运行。
与自动化帐户的通信被阻止
检查计算机上的事件查看器,查看是否有任何事件包含 changetracking
一词。
若要了解必须允许哪些地址和端口才能让更改跟踪和库存正常运行,请参阅网络规划。
未下载管理包
验证是否在本地安装了以下更改跟踪和库存管理包:
Microsoft.IntelligencePacks.ChangeTrackingDirectAgent.*
Microsoft.IntelligencePacks.InventoryChangeTracking.*
Microsoft.IntelligencePacks.SingletonInventoryCollection.*
VM 来自尚未使用 sysprep 进行配置的克隆计算机
如果使用克隆的映像,请先使用 sysprep 配置该映像,然后安装适用于 Windows 的 Log Analytics 代理。
Linux
方案:Linux 计算机上未显示更改跟踪和盘存结果
问题
对于已启用更改跟踪和库存功能的 Linux 计算机,你未看到任何更改跟踪和库存结果。
原因
下面是此问题的具体可能原因:
- 适用于 Linux 的 Log Analytics 代理未运行。
- 适用于 Linux 的 Log Analytics 代理未正确配置。
- 发生了文件完整性监视 (FIM) 冲突。
解决
适用于 Linux 的 Log Analytics 代理未运行
验证适用于 Linux 的 Log Analytics 代理 (omsagent) 的守护程序是否正在计算机上运行。 在链接到自动化帐户的 Log Analytics 工作区中运行以下查询。
Heartbeat
| summarize by Computer, Solutions
如果查询结果中未显示你的计算机,则表示该计算机最近未签入。 可能存在本地配置问题,因此应该重新安装代理。 有关安装和配置的信息,请参阅使用 Log Analytics 代理收集日志数据。
如果你的计算机显示在查询结果中,请验证作用域配置。 参阅在 Azure Monitor 中设定监视解决方案的目标。
有关此问题的更多故障排除,请参阅问题:看不到任何 Linux 数据。
适用于 Linux 的 Log Analytics 代理未正确配置
适用于 Linux 的 Log Analytics 代理可能未正确配置,因此无法使用 OMS 日志收集器工具来收集日志和命令行输出。 请参阅更改跟踪和库存概述。
FIM 冲突
Microsoft Defender for Cloud 的 FIM 功能可能错误地验证了 Linux 文件的完整性。 请验证 FIM 是否正常运行,以及是否针对 Linux 文件监视进行了正确配置。 请参阅更改跟踪和库存概述。
后续步骤
如果你的问题未在本文中列出,或者无法解决问题,请尝试通过以下渠道之一获取更多支持:
- 通过 Azure 论坛获取 Azure 专家的解答。
- 联系 @AzureSupport,这是用于改进客户体验的官方 Microsoft Azure 帐户。 Azure 支持人员会将你连接到 Azure 社区,从中可以获得解答、支持和专家建议。
- 提出 Azure 支持事件。 请转到 Azure 支持站点并选择“获取支持”。