排查与实时保护相关的性能问题

适用于:

平台

  • Windows

如果系统中的 CPU 使用率过高或与 Microsoft Defender for Endpoint 中的实时保护服务相关的性能问题,可以向Microsoft支持人员提交票证。 按照收集Microsoft Defender防病毒诊断数据中的步骤操作。

作为管理员,你还可以自行排查这些问题。

首先,如果问题是由其他软件引起的,则可能需要检查。 请阅读 与供应商联系,了解防病毒排除的已知问题

否则,可以按照 分析Microsoft保护日志中的步骤来确定与识别的性能问题相关的软件。

还可以按照中的步骤向Microsoft支持提供提交的其他日志:

有关与 Microsoft Defender 防病毒相关的特定于性能的问题,请参阅适用于 Microsoft Defender 防病毒的性能分析器

有关防病毒产品的已知问题,请与供应商联系

如果可以轻松识别影响系统性能的软件,请转到软件供应商的知识库或支持中心。 检查防病毒产品是否存在任何已知问题。 如有必要,可以与他们一起开具支持票证,并要求他们发布一个支持票证。

我们建议软件供应商遵循 与行业合作的各种准则,以尽量减少误报。 供应商可以通过Microsoft 安全智能门户提交其软件。

分析Microsoft保护日志

可以在 C:\ProgramData\Microsoft\Windows Defender\Support 中找到Microsoft保护日志文件。

MPLog-xxxxxxxx-xxxxxx.log中,可以找到运行软件的估计性能影响信息 ,如 EstimatedImpact

Per-process counts:ProcessImageName: smsswd.exe, TotalTime: 6597, Count: 1406, MaxTime: 609, MaxTimeFile: \Device\HarddiskVolume3\_SMSTaskSequence\Packages\WQ1008E9\Files\FramePkg.exe, EstimatedImpact: 65%

字段名 说明
ProcessImageName 进程映像名称
TotalTime 扫描此过程访问的文件所花费的累积持续时间(以毫秒为单位)
记数 此过程访问的扫描文件数
MaxTime 此过程访问的文件的最长单次扫描的持续时间(毫秒)
MaxTimeFile 此过程访问的文件的路径,其中记录了持续时间最长的 MaxTime 扫描
EstimatedImpact 扫描此进程访问的文件所花费的时间百分比,在此过程遇到扫描活动的时间段内

如果性能影响很大,请尝试按照配置和验证 Microsoft Defender防病毒扫描的排除项中的步骤将进程添加到路径/进程排除项。

如果上一步无法解决问题,可以通过 以下部分中的进程监视器Windows 性能记录器 收集详细信息。

使用进程监视器捕获进程日志

进程监视器 (ProcMon) 是一种高级监视工具,可显示实时进程。 可以使用此工具捕获发生的性能问题。

  1. 进程监视器 v3.89 下载到文件夹,例如 C:\temp

  2. 若要删除文件的 Web 标记,请执行以下操作:

    1. 右键单击 “ProcessMonitor.zip ”,然后选择“ 属性”。

    2. 在“ 常规 ”选项卡下,查找 “安全性”。

    3. 选中“ 取消阻止”旁边的框。

    4. 选择“应用”。

    显示“删除 MOTW”页的屏幕截图。

  3. 将文件解压缩到 中 C:\temp ,使文件夹路径为 C:\temp\ProcessMonitor

  4. ProcMon.exe 复制到要进行故障排除的 Windows 客户端或 Windows 服务器。

  5. 在运行 ProcMon 之前,请确保关闭与 CPU 使用率过高问题无关的所有其他应用程序。 执行此步骤有助于最大程度地减少要检查的进程数。

  6. 可以通过两种方式启动 ProcMon。

    1. 右键单击 “ProcMon.exe ”,然后选择“ 以管理员身份运行”。

      由于日志记录自动启动,请选择放大镜图标以停止当前捕获或使用键盘快捷方式 Ctrl+E

      显示放大镜图标的屏幕截图。

      若要验证是否已停止捕获,检查放大镜图标现在是否显示为红色 X。

      显示红色斜杠的屏幕截图。

      接下来,若要清除以前的捕获,请选择橡皮擦图标。

      显示清除图标的屏幕截图

      或者使用键盘快捷方式 Ctrl+X

    2. 第二种方法是以管理员身份运行 命令行 ,然后在进程监视器路径中运行:

      显示 cmd procmon 的屏幕截图。

      Procmon.exe /AcceptEula /Noconnect /Profiling
      

      提示

      在捕获数据时,尽可能缩小 ProcMon 窗口,以便轻松启动和停止跟踪。

      显示最小化 Procmon 的页面的屏幕截图。

  7. 按照步骤 6 中的某个过程操作后,接下来将看到用于设置筛选器的选项。 选择“确定”。 捕获完成后,始终可以筛选结果。

    显示选择“系统排除”作为“筛选出进程名称”的页面的屏幕截图。

  8. 若要开始捕获,请再次选择放大镜图标。

  9. 重现问题。

    提示

    等待问题完全重现,然后记下跟踪启动时的时间戳。

  10. 在 CPU 使用率较高的情况下有 2 到 4 分钟的进程活动后,通过选择放大镜图标停止捕获。

  11. 若要使用唯一名称和 .pml 格式保存捕获,请选择“ 文件 ”,然后选择“ 保存...”。请确保选择“ 所有事件 ”和 “本机进程监视器格式”单选按钮, (PML)

    显示“保存设置”页的屏幕截图

  12. 为了更好地跟踪,请将默认路径从 C:\temp\ProcessMonitor\LogFile.PML 更改为 C:\temp\ProcessMonitor\%ComputerName%_LogFile_MMDDYEAR_Repro_of_issue.PML ,其中:

    • %ComputerName% 是设备名称
    • MMDDYEAR 是月份、日和年
    • Repro_of_issue 是你尝试重现的问题的名称

    提示

    如果你有一个工作系统,你可能想要获取一个示例日志进行比较。

  13. 压缩文件并将其 .pml 提交给Microsoft支持人员。

使用 Windows 性能记录器捕获性能日志

可以使用 Windows Performance Recorder (WPR) 在提交中包括其他信息,以Microsoft支持。 WPR 是一种功能强大的录制工具,可创建 Windows 录制的事件跟踪。

WPR 是 Windows 评估和部署工具包 (Windows ADK) 的一部分,可从 下载并安装 Windows ADK 下载。 还可以通过 Windows 10 SDK 下载它作为Windows 10软件开发工具包的一部分。

可以按照使用 WPR UI 捕获性能日志中的步骤使用 WPR 用户界面。

或者,还可以按照使用 WPR CLI 捕获性能日志中的步骤,使用命令行工具 wpr.exe,该工具在 Windows 8 及更高版本中可用。

使用 WPR UI 捕获性能日志

提示

如果多个设备遇到此问题,请使用 RAM 最多的设备。

  1. 下载并安装 WPR。

  2. “Windows 工具包”下,右键单击“ Windows 性能记录器”。

    显示“开始”菜单的屏幕截图

    选择“ 更多”。 选择“ 以管理员身份运行”。

  3. 出现“用户帐户控制”对话框时,选择“ ”。

    显示 UAC 页的屏幕截图。

  4. 接下来,下载Microsoft Defender for Endpoint分析配置文件,并将其另存为 MDAV.wprp 文件夹,例如 C:\temp

  5. 在“WPR”对话框中,选择“ 更多选项”。

    显示可在其中选择更多选项的页面的屏幕截图

  6. 选择“ 添加配置文件...” ,然后浏览到文件的路径 MDAV.wprp

  7. 之后,应在自定义度量下看到名为“Microsoft Defender for Endpoint分析”的新配置文件集。

    显示文件中的屏幕截图。

    警告

    如果 Windows Server 的 RAM 为 64 GB 或更多,请使用自定义度量 Microsoft Defender for Endpoint analysis for large servers 值而不是 Microsoft Defender for Endpoint analysis。 否则,系统可能会消耗大量非分页池内存或缓冲区,从而导致系统不稳定。 可以通过展开 “资源分析”来选择要添加的配置文件。 此自定义配置文件为深入性能分析提供必要的上下文。

  8. 若要在 WPR UI 中使用自定义度量Microsoft Defender for Endpoint详细分析配置文件,请执行以下操作:

    1. 确保在“一级会审”、“资源分析和方案分析”组下未选择任何配置文件。

    2. 选择“ 自定义度量”。

    3. 选择“Microsoft Defender for Endpoint分析”。

    4. “详细信息级别”下选择“详细”。

    5. 在“日志记录”模式下选择“ 文件 ”或“ 内存 ”。

    重要

    如果用户可以直接重现性能问题,则应选择“ 文件 ”以使用文件日志记录模式。 大多数问题属于此类别。 但是,如果用户无法直接重现问题,但在问题发生后可以轻松注意到该问题,则用户应选择“ 内存 ”以使用内存日志记录模式。 这可确保跟踪日志不会因运行时间过长而过度膨胀。

  9. 现在可以收集数据了。 退出与重现性能问题无关的所有应用程序。 可以选择“ 隐藏选项 ”,使 WPR 窗口占用的空间保持较小。

    显示“隐藏”选项的屏幕截图。

    提示

    尝试在整秒数开始跟踪。 例如,01:30:00。 这样可以更轻松地分析数据。 此外,尝试跟踪问题重现的确切时间的时间戳。

  10. 选择“开始”

显示“记录系统信息”页的屏幕截图。

  1. 重现问题。

提示

将数据收集时间保持在不超过 5 分钟。 两到三分钟是一个很好的范围,因为正在收集大量数据。

  1. 选择“保存”

显示“保存”选项的屏幕截图。

  1. 填写 问题详细说明: 包含有关问题以及如何重现问题的信息。

显示在其中填充的窗格的屏幕截图。

  1. 选择“ 文件名: ”确定跟踪文件的保存位置。 默认情况下,它保存到 %user%\Documents\WPR Files\

  2. 选择“保存”

  3. 在合并跟踪时等待。

显示 WPR 收集常规跟踪的屏幕截图。

  1. 保存跟踪后,选择“ 打开文件夹”。

显示已保存 WPR 跟踪的通知的屏幕截图。

在提交中包括文件和文件夹,以Microsoft 支持部门。

显示文件和文件夹的详细信息的屏幕截图。

使用 WPR CLI 捕获性能日志

命令行工具 wpr.exe 是操作系统的一部分,从 Windows 8 开始。 若要使用命令行工具收集 WPR 跟踪,wpr.exe:

  1. 性能跟踪Microsoft Defender for Endpoint分析配置文件下载到本地目录中名为 MDAV.wprp 的文件,例如 C:\traces

  2. 右键单击“开始菜单”图标,然后选择“Windows PowerShell (管理员) ”或“命令提示符” (管理员) 打开管理员命令提示符窗口。

  3. 出现“用户帐户控制”对话框时,选择“ ”。

  4. 在提升的提示符下,运行以下命令以启动Microsoft Defender for Endpoint性能跟踪:

    
    wpr.exe -start C:\traces\MDAV.wprp!WD.Verbose -filemode
    
    

    警告

    如果 Windows Server 具有 64 GB 或 RAM 或更多,请分别使用配置文件 WDForLargeServers.LightWDForLargeServers.Verbose 而不是配置文件 WD.LightWD.Verbose。 否则,系统可能会消耗大量非分页池内存或缓冲区,从而导致系统不稳定。

  5. 重现问题。

    提示

    使数据收集不超过 5 分钟。 根据方案,两到三分钟是一个很好的范围,因为正在收集大量数据。

  6. 在提升的提示符下,运行以下命令以停止性能跟踪,确保提供有关问题以及如何重现问题的信息:

    wpr.exe -stop merged.etl "Timestamp when the issue was reproduced, in HH:MM:SS format" "Description of the issue" "Any error that popped up"
    
  7. 等待跟踪合并。

  8. 在提交中包括文件和文件夹,以Microsoft支持。

另请参阅

提示

想要了解更多信息? Engage技术社区中的Microsoft安全社区:Microsoft Defender for Endpoint技术社区