Analizador de rendimiento para Microsoft Defender Antivirus
Se aplica a
- Microsoft Defender para punto de conexión Plan 1
- Microsoft Defender para punto de conexión Plan 2
- Antivirus de Microsoft Defender
Plataformas
- Windows
Requisitos
Microsoft Defender Analizador de rendimiento de Antivirus tiene los siguientes requisitos previos:
- Versiones compatibles de Windows: Windows 10, Windows 11, Windows 2012 R2 con la solución unificada moderna y Windows Server 2016 y versiones posteriores
- Versión de la plataforma: 4.18.2108.7+
- Versión de PowerShell: PowerShell versión 5.1, PowerShell ISE, PowerShell remoto (4.18.2201.10+), PowerShell 7.x (4.18.2201.10+)
¿Qué es Microsoft Defender analizador de rendimiento de Antivirus?
Si los equipos que ejecutan Microsoft Defender Antivirus experimentan problemas de rendimiento, puede usar el analizador de rendimiento para mejorar el rendimiento de Microsoft Defender Antivirus. El analizador de rendimiento de Microsoft Defender Antivirus en Windows 10, Windows 11 y Windows Server es una herramienta de línea de comandos de PowerShell que le ayuda a determinar archivos, extensiones de archivo y procesos que podrían estar causando problemas de rendimiento en puntos de conexión individuales durante los exámenes antivirus. Puede usar la información recopilada por el analizador de rendimiento para evaluar los problemas de rendimiento y aplicar acciones de corrección.
De forma similar a la forma en que los mecánicos realizan diagnósticos y servicio en un vehículo que tiene problemas de rendimiento, el analizador de rendimiento puede ayudarle a mejorar el rendimiento del Antivirus de Defender.
Algunas opciones para analizar incluyen:
- Rutas de acceso principales que afectan al tiempo de examen
- Archivos principales que afectan al tiempo de examen
- Principales procesos que afectan al tiempo de examen
- Extensiones de archivo principales que afectan al tiempo de examen
- Combinaciones: por ejemplo:
- archivos principales por extensión
- rutas de acceso superiores por extensión
- procesos principales por ruta de acceso
- exámenes superiores por archivo
- exámenes superiores por archivo por proceso
Ejecución del analizador de rendimiento
El proceso de alto nivel para ejecutar el analizador de rendimiento implica los pasos siguientes:
Ejecute el analizador de rendimiento para recopilar una grabación de rendimiento de Microsoft Defender eventos antivirus en el punto de conexión.
Nota:
El rendimiento de Microsoft Defender eventos antivirus del tipo Microsoft-Antimalware-Engine se registra a través del analizador de rendimiento.
Analice los resultados del examen mediante diferentes informes de grabación.
Uso del analizador de rendimiento
Para iniciar la grabación de eventos del sistema, abra PowerShell en modo administrativo y realice los pasos siguientes:
Ejecute el siguiente comando para iniciar la grabación:
New-MpPerformanceRecording -RecordTo <recording.etl>
donde
-RecordTo
el parámetro especifica la ubicación de ruta de acceso completa en la que se guarda el archivo de seguimiento. Para obtener más información sobre los cmdlets, consulte cmdlets Microsoft Defender Antivirus.Si hay procesos o servicios que se cree que afectan al rendimiento, reproduzca la situación realizando las tareas pertinentes.
Presione ENTRAR para detener y guardar la grabación o Ctrl+C para cancelar la grabación.
Analice los resultados con el parámetro del analizador de
Get-MpPerformanceReport
rendimiento. Por ejemplo, al ejecutar el comandoGet-MpPerformanceReport -Path <recording.etl> -TopFiles 3 -TopScansPerFile 10
, se proporciona al usuario una lista de los diez primeros exámenes de los tres primeros archivos que afectan al rendimiento.
Para obtener más información sobre los parámetros y las opciones de la línea de comandos, vea New-MpPerformanceRecording y Get-MpPerformanceReport.
Nota:
Al ejecutar una grabación, si aparece el error "No se puede iniciar la grabación de rendimiento porque Windows Performance Recorder ya está grabando", ejecute el siguiente comando para detener el seguimiento existente con el nuevo comando: wpr -cancel -instancename MSFT_MpPerformanceRecording
Datos e información de optimización del rendimiento
En función de la consulta, el usuario podrá ver los datos de los recuentos de exámenes, la duración (total/min/average/max/median), la ruta de acceso, el proceso y el motivo del examen. En la imagen siguiente se muestra la salida de ejemplo de una consulta simple de los 10 archivos principales para el impacto en el examen.
Funcionalidad adicional: exportación y conversión a CSV y JSON
Los resultados del analizador de rendimiento también se pueden exportar y convertir a un archivo CSV o JSON. Para obtener ejemplos que describen el proceso de "exportación" y "conversión" a través de códigos de ejemplo, vea a continuación.
A partir de la versión 4.18.2206.X de Defender, los usuarios podrán ver la información de omitir motivos en la columna "SkipReason". Los valores posibles son:
- No omitido
- Optimización (normalmente debido a motivos de rendimiento)
- Usuario omitido (normalmente debido a exclusiones del conjunto de usuarios)
Para CSV
- Para exportar:
(Get-MpPerformanceReport -Path .\Repro-Install.etl -Topscans 1000).TopScans | Export-CSV -Path .\Repro-Install-Scans.csv -Encoding UTF8 -NoTypeInformation
- Para convertir:
(Get-MpPerformanceReport -Path .\Repro-Install.etl -Topscans 100).TopScans | ConvertTo-Csv -NoTypeInformation
Para JSON
- Para convertir:
(Get-MpPerformanceReport -Path .\Repro-Install.etl -Topscans 1000).TopScans | ConvertTo-Json -Depth 1
Para garantizar una salida legible para la máquina para la exportación con otros sistemas de procesamiento de datos, se recomienda usar -Raw
el parámetro para Get-MpPerformanceReport
. Consulte a continuación para obtener más información.
Referencia de PowerShell
Hay dos nuevos cmdlets de PowerShell que se usan para optimizar el rendimiento de Microsoft Defender Antivirus:
New-MpPerformanceRecording
En la sección siguiente se describe la referencia del nuevo cmdlet de PowerShell New-MpPerformanceRecording. Este cmdlet recopila una grabación de rendimiento de los exámenes de Microsoft Defender Antivirus.
Sintaxis: New-MpPerformanceRecording
New-MpPerformanceRecording -RecordTo <String>
Descripción: New-MpPerformanceRecording
El New-MpPerformanceRecording
cmdlet recopila una grabación de rendimiento de los exámenes de Microsoft Defender Antivirus. Estas grabaciones de rendimiento contienen eventos de proceso de kernel de Microsoft-Antimalware-Engine y NT y se pueden analizar después de la recopilación mediante el cmdlet Get-MpPerformanceReport .
Este New-MpPerformanceRecording
cmdlet proporciona información sobre los archivos problemáticos que podrían provocar una degradación en el rendimiento de Microsoft Defender Antivirus. Esta herramienta se proporciona "AS IS" y no está pensada para proporcionar sugerencias sobre exclusiones. Las exclusiones pueden reducir el nivel de protección en los puntos de conexión. Las exclusiones, si las hubiera, deben definirse con precaución.
Para obtener más información sobre el analizador de rendimiento, consulte Analizador de rendimiento documentos.
Importante
Este cmdlet requiere privilegios de administrador con privilegios elevados.
Ejemplos: New-MpPerformanceRecording
Ejemplo 1: Recopilar una grabación de rendimiento y guardarla
New-MpPerformanceRecording -RecordTo .\Defender-scans.etl
El comando anterior recopila una grabación de rendimiento y la guarda en la ruta de acceso especificada: .\Defender-scans.etl.
Ejemplo 2: Recopilación de una grabación de rendimiento para una sesión remota de PowerShell
$s = New-PSSession -ComputerName Server02 -Credential Domain01\User01
New-MpPerformanceRecording -RecordTo C:\LocalPathOnServer02\trace.etl -Session $s
El comando anterior recopila una grabación de rendimiento en Server02 (según lo especificado por el argumento $s del parámetro Session) y lo guarda en la ruta de acceso especificada: C:\LocalPathOnServer02\trace.etl en Server02.
Parámetros: New-MpPerformanceRecording
-RecordTo
Especifica la ubicación en la que se va a guardar el Microsoft Defender grabación de rendimiento de Antimalware.
Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Sesión
Especifica el objeto PSSession en el que se va a crear y guardar la grabación de rendimiento Microsoft Defender Antivirus. Cuando se usa este parámetro, el parámetro RecordTo hace referencia a la ruta de acceso local en el equipo remoto. Disponible con la versión 4.18.2201.10 de la plataforma Defender.
Type: PSSession[]
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
Get-MpPerformanceReport
En la sección siguiente se describe el cmdlet de PowerShell Get-MpPerformanceReport. Analiza e informa sobre Microsoft Defender grabación de rendimiento del antivirus.
Sintaxis: Get-MpPerformanceReport
Get-MpPerformanceReport [-Path] <String>
[-TopScans [<Int32>]]
[-TopPaths [<Int32>] [-TopPathsDepth [<Int32>]]]
[-TopScansPerPath [<Int32>]]
[-TopFilesPerPath [<Int32>]
[-TopScansPerFilePerPath [<Int32>]]
]
[-TopExtensionsPerPath [<Int32>]
[-TopScansPerExtensionPerPath [<Int32>]]
]
[-TopProcessesPerPath [<Int32>]
[-TopScansPerProcessPerPath [<Int32>]]
]
]
[-TopFiles [<Int32>]
[-TopScansPerFile [<Int32>]]
[-TopProcessesPerFile [<Int32>]
[-TopScansPerProcessPerFile [<Int32>]]
]
]
[-TopExtensions [<Int32>]
[-TopScansPerExtension [<Int32>]
[-TopPathsPerExtension [<Int32>] [-TopPathsDepth [<Int32>]]
[-TopScansPerPathPerExtension [<Int32>]]
]
[-TopProcessesPerExtension [<Int32>]
[-TopScansPerProcessPerExtension [<Int32>]]
]
[-TopFilesPerExtension [<Int32>]
[-TopScansPerFilePerExtension [<Int32>]]
]
]
[-TopProcesses [<Int32>]
[-TopScansPerProcess [<Int32>]]
[-TopExtensionsPerProcess [<Int32>]
[-TopScansPerExtensionPerProcess [<Int32>]]
]
[-TopPathsPerProcess [<Int32>] [-TopPathsDepth [<Int32>]]
[-TopScansPerPathPerProcess [<Int32>]]
]
[-TopFilesPerProcess [<Int32>]
[-TopScansPerFilePerProcess [<Int32>]]
]
]
[-MinDuration <String>]
[-Raw]
Descripción: Get-MpPerformanceReport
El Get-MpPerformanceReport
cmdlet analiza una grabación de rendimiento de antivirus Microsoft Defender previamente recopilada (New-MpPerformanceRecording) e informa de las rutas de acceso de archivo, las extensiones de archivo y los procesos que provocan el mayor impacto en los exámenes Microsoft Defender Antivirus.
El analizador de rendimiento proporciona información sobre los archivos problemáticos que podrían provocar una degradación en el rendimiento de Microsoft Defender Antivirus. Esta herramienta se proporciona "AS IS" y no está pensada para proporcionar sugerencias sobre exclusiones. Las exclusiones pueden reducir el nivel de protección en los puntos de conexión. Las exclusiones, si las hubiera, deben definirse con precaución.
Para obtener más información sobre el analizador de rendimiento, consulte Analizador de rendimiento documentos.
Versiones admitidas del sistema operativo:
Windows versión 10 y versiones posteriores.
Nota:
Esta característica está disponible a partir de la versión 4.18.2108.X de la plataforma y versiones posteriores.
Ejemplos: Get-MpPerformanceReport
Ejemplo 1: Consulta única
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopScans 20
Ejemplo 2: Varias consultas
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopFiles 10 -TopExtensions 10 -TopProcesses 10 -TopScans 10
Ejemplo 3: Consultas anidadas
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopProcesses 10 -TopExtensionsPerProcess 3 -TopScansPerExtensionPerProcess 3
Ejemplo 4: Uso del parámetro -MinDuration
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopScans 100 -MinDuration 100ms
Ejemplo 5: Uso del parámetro -Raw
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopFiles 10 -TopExtensions 10 -TopProcesses 10 -TopScans 10 -Raw | ConvertTo-Json
El uso de -Raw en el comando anterior especifica que la salida debe ser legible y fácilmente convertible a formatos de serialización como JSON.
Parámetros: Get-MpPerformanceReport
-TopPaths
Solicita un informe de rutas de acceso superiores y especifica cuántas rutas de acceso superiores se van a generar, ordenadas por "Duración". Agrega los exámenes en función de su ruta de acceso y directorio. El usuario puede especificar cuántos directorios se deben mostrar en cada nivel y la profundidad de la selección.
- Type: Int32
- Position: Named
- Default value: None
- Accept pipeline input: False
- Accept wildcard characters: False
-TopPathsDepth
Especifica la profundidad recursiva que se usará para agrupar y mostrar los resultados de la ruta de acceso agregada. Por ejemplo, "C:" corresponde a una profundidad de 1, "C:\Users\Foo" corresponde a una profundidad de 3.
Esta marca puede acompañar todas las demás opciones de Ruta de acceso superior. Si falta, se supone un valor predeterminado de 3. El valor no puede ser 0.
- Type: Int32
- Position: Named
- Default value: 3
- Accept pipeline input: False
- Accept wildcard characters: False
flag | Definición |
---|---|
-TopScansPerPath | Especifica cómo se pueden realizar exámenes superiores para especificar para cada ruta de acceso superior. |
-TopFilesPerPath | Especifica cómo se pueden especificar los archivos superiores para cada ruta de acceso superior. |
-TopScansPerFilePerPath | Especifica cuántos exámenes superiores se van a generar para cada archivo superior de cada ruta de acceso superior, ordenados por "Duración" |
-TopExtensionsPerPath | Especifica cuántas extensiones superiores se van a generar para cada ruta de acceso superior. |
-TopScansPerExtensionPerPath | Especifica cuántos exámenes superiores se van a generar para cada extensión superior para cada ruta de acceso superior. |
-TopProcessesPerPath | Especifica cuántos procesos principales se van a generar para cada ruta de acceso superior |
-TopScansPerProcessPerPath | Especifica cuántos exámenes superiores se van a generar para cada proceso superior para cada ruta de acceso superior |
-TopPathsPerExtension | Especifica cuántas rutas de acceso superiores se van a generar para cada extensión superior |
-TopScansPerPathPerExtension | Especifica cuántos exámenes superiores se van a generar para cada ruta de acceso superior para cada extensión superior. |
-TopPathsPerProcess | Especifica cuántas rutas de acceso superiores se van a generar para cada proceso superior |
-TopScansPerPathPerProcess | Especifica cuántos exámenes superiores se van a generar para cada ruta de acceso superior para cada proceso superior. |
-MinDuration
Especifica la duración mínima de cualquier examen o duración total del examen de archivos, extensiones y procesos incluidos en el informe; acepta valores como 0,1234567sec, 0,1234 ms, 0,1us o un TimeSpan válido.
Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Camino
Especifica las rutas de acceso a una o varias ubicaciones.
Type: String
Position: 0
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-Crudo
Especifica que la salida de la grabación de rendimiento debe ser legible y fácilmente convertible a formatos de serialización como JSON (por ejemplo, mediante el comando Convertir a JSON). Esto se recomienda para los usuarios interesados en el procesamiento por lotes con otros sistemas de procesamiento de datos.
Type: <SwitchParameter>
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-TopExtensions
Especifica cuántas extensiones superiores se van a generar, ordenadas por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopExtensionsPerProcess
Especifica cuántas extensiones superiores se van a generar para cada proceso superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopFiles
Solicita un informe de archivos superiores y especifica cuántos archivos principales se van a generar, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopFilesPerExtension
Especifica cuántos archivos superiores se van a generar para cada extensión superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopFilesPerProcess
Especifica cuántos archivos principales se van a generar para cada proceso superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopProcesses
Solicita un informe de procesos superiores y especifica cuántos de los procesos principales se van a generar, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopProcessesPerExtension
Especifica cuántos procesos superiores se van a generar para cada extensión superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopProcessesPerFile
Especifica cuántos procesos superiores se van a generar para cada archivo superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScans
Solicita un informe de exámenes superiores y especifica cuántos exámenes superiores se van a generar, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerExtension
Especifica cuántos exámenes superiores se van a generar para cada extensión superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerExtensionPerProcess
Especifica cuántos exámenes superiores se van a generar para cada extensión superior de cada proceso superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerFile
Especifica cuántos exámenes superiores se van a generar para cada archivo superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerFilePerExtension
Especifica cuántos exámenes superiores se van a generar para cada archivo superior de cada extensión superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerFilePerProcess
Especifica cuántos exámenes superiores de salida hay para cada archivo superior de cada proceso superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerProcess
Especifica cuántos exámenes superiores se van a generar para cada proceso superior en el informe Procesos principales, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerProcessPerExtension
Especifica cuántos exámenes superiores de salida hay para cada proceso superior de cada extensión superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerProcessPerFile
Especifica cuántos exámenes superiores de salida hay para cada proceso superior de cada archivo superior, ordenados por "Duración".
Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
Recursos adicionales
Si busca información relacionada con antivirus para otras plataformas, consulte:
- Establecer las preferencias para Microsoft Defender para punto de conexión en macOS
- Microsoft Defender para punto de conexión en Mac
- Configuración de las directivas de antivirus de macOS para Antivirus de Microsoft Defender para Intune
- Establecer preferencias para Microsoft Defender para punto de conexión en Linux
- Microsoft Defender para punto de conexión en Linux
- Configuración de características de Defender para punto de conexión en Android- Configuración de Microsoft Defender para punto de conexión en las características de iOS