Skip to content

Commit c3dba53

Browse files
authored
Merge branch 'main' into v-smandalika-9664381
2 parents 2b45139 + ec0275e commit c3dba53

8 files changed

+259
-483
lines changed

defender-endpoint/TOC.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -934,6 +934,11 @@
934934
antivirus windows defender antivirus
935935
- name: Troubleshoot performance issues related to real-time protection
936936
href: troubleshoot-performance-issues.md
937+
- name: Troubleshoot Microsoft Defender Antivirus performance issues with Process
938+
Monitor
939+
href: troubleshoot-av-performance-issues-with-procmon.md
940+
displayName: Troubleshoot Microsoft Defender Antivirus MDAV performance perf
941+
issues with Process Monitor ProcMon
937942
- name: Review event logs and error codes to troubleshoot issues with Microsoft Defender Antivirus
938943
href: troubleshoot-microsoft-defender-antivirus.yml
939944
- name: Troubleshoot Microsoft Defender Antivirus while migrating from a third-party solution
Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
---
2+
title: Troubleshoot Microsoft Defender Antivirus performance issues with Process Monitor
3+
description: Troubleshoot Microsoft Defender Antivirus performance issues with Process Monitor
4+
author: emmwalshh
5+
ms.author: ewalsh
6+
ms.reviewer: yonghree
7+
manager: deniseb
8+
ms.service: defender-endpoint
9+
ms.topic: troubleshooting-general
10+
ms.date: 01/06/2025
11+
ms.subservice: ngp
12+
ms.localizationpriority: medium
13+
ms.collection:
14+
- m365-security
15+
ms.custom:
16+
- partner-contribution
17+
f1.keywords: NOCSH
18+
audience: ITPro
19+
ai-usage: human-only
20+
---
21+
22+
# Troubleshoot Microsoft Defender Antivirus performance issues with Process Monitor
23+
24+
## Capture process logs using Process Monitor
25+
26+
Process Monitor (ProcMon) is an advanced monitoring tool that provides real-time data on processes. It can be used to capture performance issues, such as high CPU usage, and to monitor application compatibility scenarios as they occur.
27+
28+
There are two ways to capture a Process Monitor (ProcMon) trace:
29+
30+
1. Using the MDE Client Analyzer
31+
32+
1. Manually
33+
34+
### Using the MDE Client Analyzer
35+
36+
1. Download the [MDE Client Analyzer ](/defender-endpoint/download-client-analyzer).
37+
38+
1. Run the MDE Client Analyzer using [Live Response or locally ](/defender-endpoint/run-analyzer-windows).
39+
40+
> [!TIP]
41+
> Before starting the trace, please make sure that the issue is reproducible. Additionally, close any applications that do not contribute to the reproduction of the issue.
42+
43+
1. Run the MDE Client Analyzer with the -c and -v switches
44+
45+
```powershell
46+
C:\Work\tools\MDEClientAnalyzer\MDEClientAnalyzer.cmd -c -v
47+
```
48+
49+
### Manually
50+
51+
1. Download [Process Monitor v3.89](/sysinternals/downloads/procmon) to a folder like `C:\temp`.
52+
53+
1. To remove the file's mark of the web:
54+
55+
1. Right-click **ProcessMonitor.zip** and select **Properties**.
56+
57+
1. Under the *General* tab, look for *Security*.
58+
59+
1. Check the box beside **Unblock**.
60+
61+
1. Select **Apply**.
62+
63+
![Screenshot showing the Remove MOTW page.](media/procmon-motw.png)
64+
65+
1. Unzip the file in `C:\temp` so that the folder path is `C:\temp\ProcessMonitor`.
66+
67+
1. Copy **ProcMon.exe** to the Windows client or Windows server you're troubleshooting.
68+
69+
> [!TIP]
70+
> Before running ProcMon, make sure all other applications not related to the high CPU usage issue are closed. Taking this step helps to minimize the number of processes to check.
71+
72+
1. You can launch ProcMon in two ways.
73+
74+
1. Right-click **ProcMon.exe** and select **Run as administrator**.
75+
76+
Since logging starts automatically, stop the capture by selecting the magnifying glass icon or pressing **Ctrl+E**.
77+
78+
![Screenshot showing the magnifying glass icon.](media/procmon-magglass.png)
79+
80+
To confirm the capture has stopped, look for a red X on the magnifying glass icon.
81+
82+
![Screenshot showing a red slash.](media/procmon-magglass-stop.png)
83+
84+
Next, to clear the earlier capture, select the eraser icon.
85+
86+
![Screenshot showing the clear icon](media/procmon-eraser-clear.png)
87+
88+
Or use the keyboard shortcut **Ctrl+X**.
89+
90+
1. Run the **command line** as admin, then from the Process Monitor path, run:
91+
92+
![Screenshot showing the cmd procmon.](media/cmd-procmon.png)
93+
94+
ConsoleEdit development language
95+
96+
97+
```
98+
Procmon.exe /AcceptEula /Noconnect /Profiling
99+
```
100+
101+
> [!TIP]
102+
> Make the ProcMon window as small as possible when capturing data so you can easily start and stop the trace.
103+
104+
![Screenshot showing the page with Procmon minimized.](media/procmon-minimize.png)
105+
106+
1. After completing step 6, set filters by selecting **OK**. You can filter the results after the capture is complete.
107+
108+
![Screenshot showing the page where System Exclude is chosen as the Filter out Process Name.](media/procmon-filter-options.png)
109+
110+
1. To start the capture, select the magnifying glass icon again.
111+
112+
1. Reproduce the problem.
113+
114+
> [!TIP]
115+
> Wait for the problem to be reproduced, then note the timestamp when the trace begins.
116+
117+
1. After capturing two to four minutes of process activity during high CPU usage, stop the capture by clicking the magnifying glass icon.
118+
119+
1. To save the capture with a unique name in the `.pml` format, go to **File** then click **Save...**. Ensure you select the radio buttons **All events** and **Native Process Monitor Format (PML)**.
120+
121+
![Screenshot showing the save settings page](media/procmon-savesettings1.png)
122+
123+
1. For better tracking, change the default path from `C:\temp\ProcessMonitor\LogFile.PML` to `C:\temp\ProcessMonitor\%ComputerName%_LogFile_MMDDYEAR_Repro_of_issue.PML` where:
124+
125+
- `%ComputerName%` is the device name
126+
- `MMDDYEAR` is the month, day, and year
127+
- `Repro_of_issue` is the name of the issue you're trying to reproduce
128+
129+
> [!TIP]
130+
> If you have a working system, you might want to get a sample log to compare.
131+
132+
1. Zip the `.pml` file and submit it to Microsoft Support.
133+

0 commit comments

Comments
 (0)