按需评估疑难解答 (AMA)

下载评估疑难解答脚本

请下载并运行评估疑难解答脚本,以对按需评估进行自行评估和疑难解答。 请参阅本文中提供的完整疑难解答指南。

最常见的疑难解答问题

1.从 Services Hub 门户向计算机添加评估时,出现“DCR 创建失败”错误消息

DCR 终结点创建失败,并显示 Entra ID 状态详细信息。

确保 Azure 订阅已注册 Microsoft Insights 提供程序,然后重试从 Services Hub 门户添加评估解决方案。

有关如何注册提供程序的详细信息,请参阅 Azure 资源提供程序和类型

如果这无法更正问题,则可以尝试从 Azure 门户为计算机/工作区创建基本 DCR。 要测试是否有执行此操作的适当权限,请参阅在 Azure Monitor 中创建和编辑数据收集规则 (DCR)

2.错误消息:“你无权访问 Azure Log Analytics”(Services Hub ->“IT运行状况”->“按需评估”)

按照 Log Analytics 的 Azure 角色及其如何与 Services Hub 关联中的指南操作,确保你的角色具有适当的权限级别。

3.在 Services Hub 连接器中添加 ODA 评估时找不到 ARC/Azure VM

目前,SH 连接器有一个限制,它仅允许在与所选 Log Analytics 工作区相同的资源组内发现 ARC/VM 计算机,如果在添加评估时无法在列表中查看特定计算机,请检查计算机和 Log Analytics 工作区是否在同一资源组/订阅中。

4.建议未从数据收集器计算机上传到 Azure Log Analytics 工作区

如果在 Azure 工作簿中看不到收集数据的结果,请执行以下步骤:

  1. 确保数据目录中有一组用于评估的建议文件。 通常的格式为 new.recommendation.*.solutionrec(例如:new.recommendations.*.adrecs 表示 AD)。

  2. 通过检查正在使用的工作区的“日志”部分,验证文件的内容是否已上传到 Azure Log Analytics 工作区,并基于时间戳运行查询。

示例:运行 AzureAssessmentRecommendations,并将时间设置为与上次运行时间匹配(例如 24 小时前)。

如果上传成功,也可以在 Azure 表内的建议文件中看到相同的内容

如果数据存在,请验证是否已选择与工作区数据关联的正确工作簿。

Azure 的 Log Analytics 引入视图。

备注

如果找不到任何上传的数据,并且使用 Azure VM 进行数据收集,请确保为计算机启用了托管系统标识

如果使用已启用 ARC 的计算机进行数据收集,请检查 DCR 的设置,以确保在添加评估时映射了正确的工作目录路径。

  1. 导航到 Azure 门户

  2. 查找数据收集规则 (DCR)。

  3. 找到与评估关联的 DCR(它应包含 ODA 引用和评估类型)。

  4. 打开 DCR 并选择“导出模板”。

  5. 在 json 中查找“filePatterns”,并确保路径指向在其中创建建议文件的文件夹。

    DCR 模板视图。

如果路径正确,请尝试在计算机上重新运行数据收集,以确保数据未过时/过期。 如果重新运行数据收集不起作用,请尝试重启计算机,以避免出现任何故障或挂起的更新。

如果之前尚未执行此操作,请查看 AMA 的网络要求以排除任何连接问题。

5.由于权限问题,工作簿结果显示内容不可用

工作簿模板视图。

  1. 请尝试刷新内容查询。

  2. 编辑工作簿。 选择右上角的“编辑”按钮以展开参数。

    1. 选择“SubsId”,然后编辑参数:选中“在阅读模式下隐藏参数”框,然后保存所做的更改并关闭编辑器。

    工作簿编辑器视图。

如果问题未解决,请尝试为订阅重新注册 Microsoft.ServicesHub 资源提供程序。 有关注册或重新注册资源提供程序的指南,请参阅 Azure 资源提供程序和类型

链接和权限

  1. 通过你用于登录 Services Hub 的同一电子邮件 ID,验证是否有角色所需的 Azure 订阅权限

  2. 导航到“运行状况”选项卡、然后导航到“评估”。

  3. 确认你有权访问的 Log Analytics 工作区是 Services Hub 中链接的工作区。

    1. 如果不是,请重新链接。 选择右上角的配置文件,然后选择“编辑 Log Analytics 工作区”并链接所需工作区。
  4. 确认已从目录中添加了所需的评估。

    评估结果仪表板。

    可用按需评估 2。

    特定评估窗口。

本部分介绍在调用命令(如 AddExchangeAssessmentTask)时可能会遇到的一些最常见问题。

Windows Server 2008 R2 不识别 Add-*AssessmentTask commandlets

建议不要在 Windows Server 2008 计算机上运行评估。 但是,如果非要运行评估,则需要执行以下步骤:

  1. 在 Windows 2008 Server 上安装最新版本的 Powershell 和 .NET 4.6.2。

    1. 大部分 Windows 2008 服务器都安装了 Powershell,其使用不满足要求的 .NET 2.0。
  2. 以管理员模式运行 Powershell。

  3. 检查自定义 ODA 模块在计算机上是否可用:Get-Module Microsoft.PowerShell.Oms.Assessments -listavailable。 确保显示的路径为 C:\ODA\Binaries\bin\Microsoft.PowerShell.Oms.Assessments

如果使用 get 命令找不到模块,请检查模块是否位于环境变量列表中。 在 PowerShell 中运行 $env:psmodulepath 以显示列表。

在安装扩展过程中,通常会添加正确的路径。 如果缺少该路径,可以通过运行以下命令手动添加正确的路径:

$env:PSModulePath = $env:PSModulePath + ";C:\ODA\Binaries\bin\Microsoft.PowerShell.Oms.Assessments"

作为预防措施,请验证计算机上是否存在该路径,以确保模块已安装在计算机上。

备注

如果发现模块的第二个条目指向 \Program Files\Microsoft Monitoring Agent,并且已从基于 MMA 的评估类型迁移,请随时移除此辅助路径。 为此,请运行 $env,然后导航到“环境变量”->“PsModulePath”,并从列表中删除条目。

显示正确工作目录和子目录的 PowerShell。

PowerShell 窗口显示文件位置。

运行此命令后,应能够调用 Add-*AssessmentTask commandlets

备注

要确保 PowerShell 加载 AMA 模块,请运行 Add-*AssessmentTask 并验证系统是否提示在安装过程中提供 Log Analytics 工作区 ID。

AMA 模块任务。

用于 MMA 的模块的以前版本不会提示输入工作区 ID。

在任何平台上,如果不识别 Add-*AssessmentTask commandlets

  1. 验证是否已下载 OMS 评估 Powershell 模块。

    1. 请验证 C:\ODA\Binaries\bin 是否包含名为 Microsoft.PowerShell.Oms.Assessments 的子目录,并且该子目录中包含名为 Microsoft.PowerShell.Oms.Assessments.dll 的文件。
  2. 如果 Microsoft.PowerShell.Oms.Assessments.dll 不存在,请确保从 Services Hub 链接 Log Analytics 工作区。

  3. 验证已安装的 PowerShell 版本是否至少为 4.0

    1. 在 Powershell 窗口中键入 $PsVersionTable 且该 Powershell 使用 4.0 或更高版本的 CLRVersion。
  4. 确保具有正确的模块路径。

执行 Add-*AssessmentTask cmdlet 时对评估安装错误进行疑难解答

  1. 查看日志文件。

  2. 日志文件位置显示在 Powershell 控制台窗口中。 这是一条以白色显示的信息性消息,如以下屏幕截图所示:

    PowerShell 窗口显示详细的日志文件位置。

备注

如果 Add-_AssessmentTask 由于某种原因失败,请查看日志文件。

  1. -ScheduledTaskUserName-ScheduledTaskPassword 可能无效 - 不存在此用户,或者密码无效或已过期。

    PowerShell 窗口显示用户错误消息。

成功运行计划任务的要求

验证用户帐户组策略:以批处理作业权限登录

备注

有时,评估可能不会从任务计划程序触发,如果还没有正在运行的批处理作业权限,可能会发生这种情况。 如果是这种情况,则需要通过 gpedit.msc.* 显式授予权限。

  1. 选择并按住或右键单击“以批处理作业权限登录”,并选择“属性”。

  2. 选择“添加用户或组”,并包括相关用户。

不要在用户注销时强制卸载用户注册表

在数据收集计算机上,将组策略编辑器 (gpedit.msc) 中的以下设置从“未配置”更改为“已启用”。

转到“计算机配置”->“管理模板”->“系统”->“用户配置文件”。

启用“请勿在用户注销时强制卸载用户注册表”。

禁用 FIPS 策略

  1. 导航到“控制面板”。

  2. 选择“管理工具”,然后选择“本地安全策略”。

  3. 展开“本地策略”,然后选择“安全选项”。

    “本地安全策略”窗口显示“安全选项”文件夹。

  4. 在右侧窗格的“策略”下,选择“系统加密”。

  5. 使用符合 FIPS 的算法进行加密、哈希和签名,然后选择“已禁用”。

网络访问:不允许存储密码和凭据

发生此错误并显示消息“指定的登录会话不存在。 它可能已被终止。”要解决此问题,请执行以下操作:

  1. 导航到“SECPOL.MSC”->“安全设置”->“本地策略”->“安全选项”。

  2. 不允许存储网络身份验证的密码和凭据。

    “本地组策略编辑器”窗口。

  3. 将策略设置为“已禁用”。

评估尚未添加到工作区

如果调用 start-XXXAssessment 导致此错误:“没有与当前 Log Analytics 工作区关联的文件 XXXAssessment.execPkg...”,原因是必须通过 ServicesHub 门户向计算机添加特定评估类型。

在 Services Hub 页上添加评估:

  1. 选择“运行状况”选项卡,然后选择“评估”。

  2. 在页面末尾,选择“可用的按需评估”下列出的所需评估。

  3. 选择“添加评估”。

  4. 请至少等待 5 到 10 分钟,以便添加解决方案扩展。

    PowerShell 窗口显示没有关联文件的错误消息。

OnDemand 评估的数据不再显示在 Log Analytics 中,而过去可以在其中显示

  1. 在任务计划程序中查找计划任务。

  2. 从任务计划程序手动运行任务。

  3. 确认 OmsAssessment.exe 进程正在运行。

如果未运行此类进程,则可能是针对此评估运行 Add-XXXAssessmentTask 时指定的密码已过期或更改,并且不再有效。

如果是这样,可以同时在任务计划程序的“历史记录”选项卡上以及任务计划程序事件日志中看到错误,其中 EventId 101(和 104)和 ErrorValue 2147943726 如以下屏幕截图所示:

任务计划程序启动失败。

任务计划程序启动失败错误详细信息。

“评估”文件夹,其中突出显示了编号文件夹。

OmsAssessment.exe 未运行或长时间停滞

有时,你可能会从日志记录中发现,OMSAssessment.exe 进程无法启动或似乎长时间停滞在同一步骤中。 运行任务时会触发 OMSAssessment.exe 进程,该进程负责环境发现、数据收集和分析。

这可能是由于防病毒软件阻止了与进程相关的某些脚本或依赖项。 虽然可以在打开防病毒软件的情况下运行评估,但根据产品或环境设置,有时防病毒软件可能会影响进程的性能或阻止创建某些文件。

为避免相关问题,建议在防病毒软件中为运行评估的文件夹添加异常。

检查是否有任何冲突的 omsassessment.exe 进程正在运行

打开“任务管理器”并查找名为 omsassessment.exe 的进程。 如果可见,则指示评估仍在运行。

如果长时间运行(例如一整天),评估代理可能无法处理数据。 按照下一节中的故障排除步骤解决问题。

检查先决条件文件中的所有错误

转到评估工作目录,并查看先决条件 (processed.prerequisites) 文件,以查找针对评估目标提及的任何错误。

“评估”文件夹 process.prerequisites。

如果发现任何错误(例如,WMI 连接问题),则此文件中会提及目标名称和错误。

解决任何提到的错误,然后触发评估:

  1. 导航到“任务计划程序”->“Microsoft”->“Operations Management Suite”->“AOI*****”->“评估”。

  2. 选择并按住或右键单击所需评估计划任务,然后选择“运行”。

检查发现日志文件中的错误

  1. 导航到评估工作目录,然后导航到目录中 6-8 位数编号的文件夹。
  2. 查找名为 Logs 的文件夹。 在其中可以找到名为 DiscoveryTrace*** 的文件。
  3. 查找此文件中的任何错误或异常并解决它们,因其与凭据/权限问题、WMI 故障、网络问题等有关。

大文件引入

评估文件夹显示文件大小。

尽量减少每个评估计划的目标数

如果运行的是 Windows Server、Windows 客户端或 SQL 评估,并且在单个计划任务中添加了 5 个以上的目标,则评估代理可能无法一次性处理这么多目标。

如果遇到这种情况,请使用以下 cmdlet 删除任何现有配置:

Remove-WindowsClientAssessmentTask -LogAnalyticsWorkspaceId "YourWorkspaceId"
Remove-WindowsServerAssessmentTask -LogAnalyticsWorkspaceId "YourWorkspaceId"
Remove-SQLAssessmentTask -LogAnalyticsWorkspaceId "YourWorkspaceId"

现在使用较少目标重新运行 Add-AssessmentTasks。 可添加多个此类任务,并创建批量任务且每个任务包含 3-5 个目标,从而加快整个环境的评估速度。

查看计划任务调度和上载程序日志文件

在“评估”工作目录中,有一个名为 \Logs\ 的文件夹,其中包含 *Commandlet*.log*Module*.log

Commandlet.log 文件包含有关启动 Powershell commandlet 的计划任务的数据。 可以使用此数据来查找计划任务未启动的原因。

如果启动 ODA 计划任务时未生成此文件,则通常指示密码错误。

应用程序和 Services Logs\Operations Manager Event Log 还包含对各种问题进行疑难解答的信息。

在 PowerShell 中添加评估任务时,没有输入 Log Analytics 工作区 ID 的提示

在 PowerShell 中创建评估任务期间,系统会提示输入 Log Analytics 工作区 ID (LAW-ID)。 此过程是创建计划任务以运行评估的过程。

如果未提示你提供 LAW-ID,则说明你未使用正确的 PowerShell 模块。 如果仍安装 Microsoft Monitoring Agent,或者数据收集计算机尚未选取 Azure Monitoring Agent 的 PowerShell 模块的路径,则可能会发生这种情况。

要配置环境变量:

  1. 选择“开始”。

  2. 使用搜索框搜索“环境”。

  3. 在“系统属性”窗口中,选择“环境变量”。

    系统属性对话框,其中标记了“环境变量”按钮。

  4. 在“环境变量”窗口中,找到名为“PSModulePath”的变量并将其选中,然后选择“编辑”。

    “环境变量”对话框,其中选择了“PSModulePath”并标记了“编辑”按钮。

  5. C:\ODA\Binaries\bin\Microsoft.PowerShell.OMS.Assessments 行移动到 C:\ProgramFiles\MicrosoftMonitoringAgent\Agent\PowerShell\ 行上方。

    “编辑环境变量”对话框,其中标记了“上移”按钮。

  6. 选择“确定”三次以退出“系统属性”。

  7. 打开新的“管理 PowerShell”窗口。

  8. 请尝试重新添加评估。

    管理员 Windows PowerShell 窗口。

  9. 如果仍然未看到任何更改,请重新启动计算机。