Analyseur de performances pour Microsoft Defender Antivirus

S’applique à

Plateformes

  • Windows

Configuration requise

Microsoft Defender’analyseur de performances antivirus a les prérequis suivants :

  • Versions de Windows prises en charge : Windows 10, Windows 11, Windows 2012 R2 avec la solution unifiée moderne et Windows Server 2016 et versions ultérieures
  • Version de la plateforme : 4.18.2108.7 ou version ultérieure
  • Version de PowerShell : PowerShell Version 5.1, PowerShell ISE, PowerShell distant (4.18.2201.10+), PowerShell 7.x (4.18.2201.10+)

Qu’est-ce que Microsoft Defender’analyseur de performances antivirus ?

Si les ordinateurs exécutant Microsoft Defender Antivirus rencontrent des problèmes de performances, vous pouvez utiliser l’analyseur de performances pour améliorer les performances de Microsoft Defender Antivirus. Analyseur de performances pour antivirus Microsoft Defender dans Windows 10, Windows 11 et Windows Server, est un outil en ligne de commande PowerShell qui vous aide à déterminer les fichiers, extensions de fichiers et processus susceptibles de provoquer des problèmes de performances sur des points de terminaison individuels pendant les analyses antivirus. Vous pouvez utiliser les informations collectées par l’analyseur de performances pour évaluer les problèmes de performances et appliquer des actions de correction.

À l’instar de la façon dont les mécaniciens effectuent des diagnostics et des services sur un véhicule qui rencontre des problèmes de performances, l’analyseur de performances peut vous aider à améliorer les performances de l’antivirus Defender.

Image de l’analyseur de performances conceptuel pour Microsoft Defender Antivirus. Le diagramme est lié à : Microsoft Defender analyseur de performances, Analyseur de performances Defender, Get-MpPerformanceRepor, New-MpPerformanceRecording, windows Defender, microsoft Defender, microsoft windows 10, antivirus microsoft Defender, micro windows 11, antivirus Windows, antivirus Windows, antivirus Microsoft, antivirus Windows Defender, antivirus Windows 10, microsoft windows Defender, performances Windows.

Voici quelques options à analyser :

  • Principaux chemins d’accès qui ont un impact sur la durée d’analyse
  • Principaux fichiers qui ont un impact sur la durée de l’analyse
  • Principaux processus qui ont un impact sur le temps d’analyse
  • Principales extensions de fichier qui ont un impact sur la durée de l’analyse
  • Combinaisons : par exemple :
    • fichiers principaux par extension
    • principaux chemins d’accès par extension
    • principaux processus par chemin d’accès
    • principales analyses par fichier
    • principales analyses par fichier et par processus

Exécution de l’analyseur de performances

Le processus général d’exécution de l’analyseur de performances implique les étapes suivantes :

  1. Exécutez l’analyseur de performances pour collecter un enregistrement des performances des événements antivirus Microsoft Defender sur le point de terminaison.

    Remarque

    Les performances des événements antivirus Microsoft Defender de type Microsoft-Antimalware-Engine sont enregistrées via l’analyseur de performances.

  2. Analysez les résultats de l’analyse à l’aide de différents rapports d’enregistrement.

Utilisation de l’analyseur de performances

Pour démarrer l’enregistrement des événements système, ouvrez PowerShell en mode d’administration et effectuez les étapes suivantes :

  1. Exécutez la commande suivante pour démarrer l’enregistrement :

    New-MpPerformanceRecording -RecordTo <recording.etl>
    

    where -RecordTo parameter spécifie l’emplacement complet du chemin d’accès dans lequel le fichier de trace est enregistré. Pour plus d’informations sur les applets de commande, consultez Microsoft Defender Applets de commande antivirus.

  2. Si des processus ou des services sont considérés comme ayant une incidence sur les performances, reproduisez la situation en effectuant les tâches pertinentes.

  3. Appuyez sur Entrée pour arrêter et enregistrer l’enregistrement, ou sur Ctrl+C pour annuler l’enregistrement.

  4. Analysez les résultats à l’aide du paramètre de l’analyseur de Get-MpPerformanceReport performances. Par exemple, lors de l’exécution de la commande Get-MpPerformanceReport -Path <recording.etl> -TopFiles 3 -TopScansPerFile 10, l’utilisateur reçoit la liste des dix premières analyses pour les trois premiers fichiers affectant les performances.

Pour plus d’informations sur les paramètres et options de ligne de commande, consultez New-MpPerformanceRecording et Get-MpPerformanceReport.

Remarque

Lorsque vous exécutez un enregistrement, si vous recevez l’erreur « Impossible de démarrer l’enregistrement des performances, car l’enregistreur de performances Windows est déjà en cours d’enregistrement », exécutez la commande suivante pour arrêter la trace existante avec la nouvelle commande : wpr -cancel -instancename MSFT_MpPerformanceRecording

Données et informations sur le réglage des performances

En fonction de la requête, l’utilisateur peut afficher les données relatives au nombre d’analyses, à la durée (total/min/moyenne/max/médiane), au chemin, au processus et à la raison de l’analyse. L’image suivante montre un exemple de sortie pour une requête simple des 10 premiers fichiers pour l’impact de l’analyse.

Exemple de sortie pour une requête TopFiles de base

Fonctionnalités supplémentaires : exportation et conversion en CSV et JSON

Les résultats de l’analyseur de performances peuvent également être exportés et convertis en fichier CSV ou JSON. Pour obtenir des exemples qui décrivent le processus d'« exportation » et de « conversion » par le biais d’exemples de codes, consultez les sections suivantes.

À compter de la version 4.18.2206.Xde Defender, les utilisateurs peuvent afficher les informations de motif de l’analyse ignorée sous la colonne « SkipReason ». Les valeurs possibles sont les suivantes :

  • Non ignoré
  • Optimisation (généralement pour des raisons de performances)
  • Utilisateur ignoré (généralement en raison d’exclusions de jeu d’utilisateurs)

Pour CSV

  • Pour exporter :
(Get-MpPerformanceReport -Path .\Repro-Install.etl -Topscans 1000).TopScans | Export-CSV -Path .\Repro-Install-Scans.csv -Encoding UTF8 -NoTypeInformation
  • Pour convertir :
(Get-MpPerformanceReport -Path .\Repro-Install.etl -Topscans 100).TopScans | ConvertTo-Csv -NoTypeInformation

Pour JSON

  • Pour convertir :
(Get-MpPerformanceReport -Path .\Repro-Install.etl -Topscans 1000).TopScans | ConvertTo-Json -Depth 1

Pour garantir une sortie lisible par l’ordinateur pour l’exportation avec d’autres systèmes de traitement des données, il est recommandé d’utiliser -Raw le paramètre pour Get-MpPerformanceReport. Pour plus d’informations, consultez les sections suivantes.

Informations de référence sur PowerShell

Deux nouvelles applets de commande PowerShell sont utilisées pour optimiser les performances de Microsoft Defender Antivirus :

New-MpPerformanceRecording

La section suivante décrit la référence de la nouvelle applet de commande PowerShell New-MpPerformanceRecording. Cette applet de commande collecte un enregistrement des performances de Microsoft Defender analyses antivirus.

Syntaxe : New-MpPerformanceRecording

New-MpPerformanceRecording -RecordTo <String>

Description : New-MpPerformanceRecording

L’applet New-MpPerformanceRecording de commande collecte un enregistrement des performances de Microsoft Defender analyses antivirus. Ces enregistrements de performances contiennent des événements de processus du noyau Microsoft-Antimalware-Engine et NT et peuvent être analysés après la collecte à l’aide de l’applet de commande Get-MpPerformanceReport .

Cette New-MpPerformanceRecording applet de commande fournit un aperçu des fichiers problématiques susceptibles d’entraîner une dégradation des performances de Microsoft Defender Antivirus. Cet outil est fourni « TEL QU’il est » et n’est pas destiné à fournir des suggestions sur les exclusions. Les exclusions peuvent réduire le niveau de protection sur vos points de terminaison. Les exclusions, le cas échéant, doivent être définies avec prudence.

Pour plus d’informations sur l’analyseur de performances, consultez Analyseur de performances documentation.

Importante

Cette applet de commande nécessite des privilèges d’administrateur élevés.

Exemples : New-MpPerformanceRecording

Exemple 1 : Collecter un enregistrement de performances et l’enregistrer
New-MpPerformanceRecording -RecordTo .\Defender-scans.etl

La commande ci-dessus collecte un enregistrement de performances et l’enregistre dans le chemin spécifié : .\Defender-scans.etl.

Exemple 2 : Collecter un enregistrement de performances pour une session PowerShell distante
$s = New-PSSession -ComputerName Server02 -Credential Domain01\User01
New-MpPerformanceRecording -RecordTo C:\LocalPathOnServer02\trace.etl -Session $s

La commande ci-dessus collecte un enregistrement des performances sur Server02 (comme spécifié par l’argument $s du paramètre Session) et l’enregistre dans le chemin d’accès spécifié : C :\LocalPathOnServer02\trace.etl on Server02.

Paramètres : New-MpPerformanceRecording

-RecordTo

Spécifie l’emplacement dans lequel enregistrer l’enregistrement des performances Microsoft Defender anti-programme malveillant.

Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Session

Spécifie l’objet PSSession dans lequel créer et enregistrer l’enregistrement des performances de l’antivirus Microsoft Defender. Lorsque vous utilisez ce paramètre, le paramètre RecordTo fait référence au chemin d’accès local sur l’ordinateur distant. Disponible avec la plateforme Defender version 4.18.2201.10.

Type: PSSession[]
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

Get-MpPerformanceReport

La section suivante décrit l’applet de commande PowerShell Get-MpPerformanceReport. Analyse et génère des rapports sur Microsoft Defender’enregistrement des performances de l’antivirus.

Syntaxe : 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]

Description : Get-MpPerformanceReport

L’applet Get-MpPerformanceReport de commande analyse un enregistrement des performances antivirus Microsoft Defender précédemment collecté (New-MpPerformanceRecording) et signale les chemins d’accès aux fichiers, les extensions de fichier et les processus qui ont le plus grand impact sur Microsoft Defender analyses antivirus.

L’analyseur de performances fournit des informations sur les fichiers problématiques susceptibles d’entraîner une dégradation des performances de Microsoft Defender Antivirus. Cet outil est fourni « TEL QUELLE » et n’est pas destiné à fournir des suggestions sur les exclusions. Les exclusions peuvent réduire le niveau de protection sur vos points de terminaison. Les exclusions, le cas échéant, doivent être définies avec prudence.

Pour plus d’informations sur l’analyseur de performances, consultez Analyseur de performances documentation.

Versions de système d’exploitation prises en charge :

Windows version 10 et ultérieures.

Remarque

Cette fonctionnalité est disponible à partir de la version de plateforme 4.18.2108.X et ultérieure.

Exemples : Get-MpPerformanceReport

Exemple 1 : Requête unique
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopScans 20
Exemple 2 : Requêtes multiples
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopFiles 10 -TopExtensions 10 -TopProcesses 10 -TopScans 10
Exemple 3 : requêtes imbriquées
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopProcesses 10 -TopExtensionsPerProcess 3 -TopScansPerExtensionPerProcess 3
Exemple 4 : Utilisation du paramètre -MinDuration
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopScans 100 -MinDuration 100ms
Exemple 5 : Utilisation du paramètre -Raw
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopFiles 10 -TopExtensions 10 -TopProcesses 10 -TopScans 10 -Raw | ConvertTo-Json

L’utilisation de -Raw dans la commande ci-dessus spécifie que la sortie doit être lisible par l’ordinateur et facilement convertible en formats de sérialisation tels que JSON.

Paramètres : Get-MpPerformanceReport

-TopPaths

Demande un rapport top-paths et spécifie le nombre de chemins d’accès principaux à la sortie, triés par Durée. Agrège les analyses en fonction de leur chemin d’accès et de leur répertoire. L’utilisateur peut spécifier le nombre de répertoires à afficher sur chaque niveau et la profondeur de la sélection.

- Type: Int32
- Position: Named
- Default value: None
- Accept pipeline input: False
- Accept wildcard characters: False
-TopPathsDepth

Spécifie la profondeur récursive utilisée pour regrouper et afficher les résultats du chemin agrégé. Par exemple, « C : » correspond à une profondeur de 1, « C :\Users\Foo » correspond à une profondeur de 3.

Cet indicateur peut accompagner toutes les autres options de chemin d’accès supérieur. S’il est manquant, une valeur par défaut de 3 est supposée. La valeur ne peut pas être 0.

- Type: Int32
- Position: Named
- Default value: 3
- Accept pipeline input: False
- Accept wildcard characters: False
flag Définition
-TopScansPerPath Spécifie le nombre d’analyses principales à spécifier pour chaque chemin d’accès supérieur.
-TopFilesPerPath Spécifie le nombre de fichiers principaux à spécifier pour chaque chemin d’accès supérieur.
-TopScansPerFilePerPath Spécifie le nombre d’analyses principales à générer pour chaque fichier supérieur pour chaque chemin d’accès supérieur, trié par « Durée »
-TopExtensionsPerPath Spécifie le nombre d’extensions principales à générer pour chaque chemin d’accès supérieur
-TopScansPerExtensionPerPath Spécifie le nombre d’analyses principales à générer pour chaque extension supérieure pour chaque chemin d’accès supérieur
-TopProcessesPerPath Spécifie le nombre de processus principaux à générer pour chaque chemin d’accès supérieur
-TopScansPerProcessPerPath Spécifie le nombre d’analyses principales à générer pour chaque processus supérieur pour chaque chemin d’accès supérieur
-TopPathsPerExtension Spécifie le nombre de chemins d’accès principaux à la sortie pour chaque extension supérieure
-TopScansPerPathPerExtension Spécifie le nombre d’analyses principales à générer pour chaque chemin d’accès supérieur pour chaque extension supérieure
-TopPathsPerProcess Spécifie le nombre de chemins d’accès principaux à la sortie pour chaque processus supérieur
-TopScansPerPathPerProcess Spécifie le nombre d’analyses principales à générer pour chaque chemin d’accès supérieur pour chaque processus supérieur
-MinDuration

Spécifie la durée minimale des analyses ou des durées totales d’analyse des fichiers, extensions et processus inclus dans le rapport ; accepte des valeurs telles que 0,1234567sec, 0,1234ms, 0,1us ou un TimeSpan valide.

Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Chemin

Spécifie le ou les chemins d’accès à un ou plusieurs emplacements.

Type: String
Position: 0
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-Cru

Spécifie que la sortie de l’enregistrement des performances doit être lisible par l’ordinateur et facilement convertible en formats de sérialisation tels que JSON (par exemple, via la commande Convert-to-JSON). Cette configuration est recommandée pour les utilisateurs intéressés par le traitement par lots avec d’autres systèmes de traitement des données.

Type: <SwitchParameter>
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-TopExtensions

Spécifie le nombre d’extensions principales à générer, triées par Durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopExtensionsPerProcess

Spécifie le nombre d’extensions principales à générer pour chaque processus supérieur, trié par Durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopFiles

Demande un rapport top-files et spécifie le nombre de fichiers principaux à générer, triés par Durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopFilesPerExtension

Spécifie le nombre de fichiers principaux à générer pour chaque extension supérieure, trié par Durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopFilesPerProcess

Spécifie le nombre de fichiers principaux à générer pour chaque processus supérieur, triés par Durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopProcesses

Demande un rapport de processus principaux et spécifie le nombre de processus principaux à générer, triés par durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopProcessesPerExtension

Spécifie le nombre de processus principaux à générer pour chaque extension supérieure, trié par Durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopProcessesPerFile

Spécifie le nombre de processus principaux à générer pour chaque fichier supérieur, trié par Durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScans

Demande un rapport de top-scans et spécifie le nombre d’analyses principales à générer, triés par Durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerExtension

Spécifie le nombre d’analyses principales à générer pour chaque extension supérieure, triée par durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerExtensionPerProcess

Spécifie le nombre d’analyses principales à générer pour chaque extension supérieure pour chaque processus supérieur, trié par durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerFile

Spécifie le nombre d’analyses principales à générer pour chaque fichier supérieur, triés par Durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerFilePerExtension

Spécifie le nombre d’analyses principales à générer pour chaque fichier supérieur pour chaque extension supérieure, triée par durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerFilePerProcess

Spécifie le nombre d’analyses principales pour la sortie de chaque fichier supérieur pour chaque processus supérieur, triées par durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerProcess

Spécifie le nombre d’analyses principales à générer pour chaque processus principal dans le rapport Processus principaux, triés par durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerProcessPerExtension

Spécifie le nombre d’analyses principales de sortie pour chaque processus supérieur pour chaque extension supérieure, triées par durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerProcessPerFile

Spécifie le nombre d’analyses principales de sortie pour chaque processus supérieur pour chaque fichier supérieur, triés par Durée.

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

Ressources supplémentaires

Si vous recherchez des informations relatives à l’antivirus pour d’autres plateformes, consultez :

Conseil

Voulez-vous en savoir plus ? Engage avec la communauté Microsoft Security dans notre communauté technique : Microsoft Defender pour point de terminaison Tech Community.