Analizador de rendimiento para antivirus de Microsoft Defender
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
El analizador de rendimiento del Antivirus de Microsoft Defender tiene los siguientes requisitos previos:
- Versiones admitidas de Windows:
- Windows 10
- Windows 11
- Windows Server 2016 y versiones posteriores
- Windows Server 2012 R2 (cuando se incorpora mediante una solución moderna y unificada)
- Para Windows Server 2012 R2, se necesita Windows ADK (Windows Performance Toolkit). Descarga e instalación de Windows ADK
- Versión de la plataforma:
4.18.2108.7
o posterior - 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 el analizador de rendimiento del Antivirus de Microsoft Defender?
Si los dispositivos que ejecutan el Antivirus de Microsoft Defender experimentan problemas de rendimiento, puede usar el analizador de rendimiento para mejorar el rendimiento del Antivirus de Microsoft Defender. El analizador de rendimiento 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 servicios en un vehículo que tiene problemas de rendimiento, el analizador de rendimiento puede ayudarle a mejorar el rendimiento del Antivirus de Microsoft 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 eventos del Antivirus de Microsoft Defender en el punto de conexión.
Nota:
El rendimiento de los eventos del Antivirus de Microsoft Defender 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 de administrador 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 del Antivirus de Microsoft Defender.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 mediante 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 puede 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.
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. En este artículo se incluyen ejemplos que describen el proceso de "exportación" y "conversión" mediante código de ejemplo.
A partir de la versión 4.18.2206.X
de Defender, los usuarios pueden ver la información de la razón de omisión de examen en la SkipReason
columna . 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 las secciones siguientes para obtener más información.
Referencia de PowerShell
Hay dos nuevos cmdlets de PowerShell que se usan para optimizar el rendimiento del Antivirus de Microsoft Defender:
New-MpPerformanceRecording
En la sección siguiente se describe la referencia para el nuevo cmdlet New-MpPerformanceRecording
de PowerShell . Este cmdlet recopila una grabación de rendimiento de los exámenes del Antivirus de Microsoft Defender.
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 del Antivirus de Microsoft Defender. 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 del Antivirus de Microsoft Defender. Esta herramienta se proporciona "tal cual" 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 los documentos del Analizador de rendimiento .
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 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 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 la grabación de rendimiento de Antimalware de Microsoft Defender.
Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Sesión
Especifica el objeto en el PSSession
que se va a crear y guardar la grabación de rendimiento del Antivirus de Microsoft Defender. Cuando se usa este comando, el RecordTo
parámetro 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 y versiones posteriores.
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 Get-MpPerformanceReport
cmdlet de PowerShell. Analiza e informa sobre la grabación de rendimiento del Antivirus de Microsoft Defender.
Sintaxis: Get-MpPerformanceReport
Get-MpPerformanceReport [-Path] <String> [-TopFiles <Int32>] [-TopScansPerFile <Int32>] [-TopProcessesPerFile
<Int32>] [-TopScansPerProcessPerFile <Int32>] [-TopPaths <Int32>] [-TopPathsDepth <Int32>] [-TopScansPerPath
<Int32>] [-TopFilesPerPath <Int32>] [-TopScansPerFilePerPath <Int32>] [-TopExtensionsPerPath <Int32>]
[-TopScansPerExtensionPerPath <Int32>] [-TopProcessesPerPath <Int32>] [-TopScansPerProcessPerPath <Int32>]
[-TopExtensions <Int32>] [-TopScansPerExtension <Int32>] [-TopPathsPerExtension <Int32>]
[-TopScansPerPathPerExtension <Int32>] [-TopFilesPerExtension <Int32>] [-TopScansPerFilePerExtension <Int32>]
[-TopProcessesPerExtension <Int32>] [-TopScansPerProcessPerExtension <Int32>] [-TopProcesses <Int32>]
[-TopScansPerProcess <Int32>] [-TopFilesPerProcess <Int32>] [-TopScansPerFilePerProcess <Int32>]
[-TopExtensionsPerProcess <Int32>] [-TopScansPerExtensionPerProcess <Int32>] [-TopPathsPerProcess <Int32>]
[-TopScansPerPathPerProcess <Int32>] [-TopScans <Int32>] [-MinDuration <String>] [-MinStartTime <DateTime>]
[-MinEndTime <DateTime>] [-MaxStartTime <DateTime>] [-MaxEndTime <DateTime>] [-Overview] [-Raw]
[<CommonParameters>]
Descripción: Get-MpPerformanceReport
El Get-MpPerformanceReport
cmdlet analiza una grabación de rendimiento del Antivirus de Microsoft Defender recopilada anteriormente (New-MpPerformanceRecording) e informa de las rutas de acceso de archivo, las extensiones de archivo y los procesos que causan el mayor impacto en los exámenes del Antivirus de Microsoft Defender.
El analizador de rendimiento proporciona información sobre los archivos problemáticos que podrían provocar una degradación en el rendimiento del Antivirus de Microsoft Defender. Esta herramienta se proporciona "tal cual" 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 los documentos del Analizador de rendimiento .
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 -Raw
de en el comando 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 usa para agrupar y mostrar los resultados de ruta de acceso agregados. Por ejemplo C:\
, corresponde a una profundidad de 1 y 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 cuántos exámenes superiores se especificarán para cada ruta de acceso superior. |
-TopFilesPerPath |
Especifica cuántos archivos superiores se especificarán 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.1234ms
, 0.1us
o un TimeSpan válido.
Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Camino
Especifica la ruta de acceso o 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). Esta configuración 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 principales 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 el número de exámenes superiores de salida de cada archivo superior para 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 para la salida de 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
Sugerencia
¿Desea obtener más información? Interactúe con la comunidad de seguridad de Microsoft en nuestra comunidad tecnológica: Microsoft Defender para punto de conexión Tech Community.