Ytelsesanalyse for Microsoft Defender Antivirus

Gjelder for

Plattformer

  • Windows

Krav

Microsoft Defender antivirusytelsesanalyse har følgende forutsetninger:

  • Støttede Windows-versjoner: Windows 10, Windows 11, Windows 2012 R2 med den moderne enhetlige løsningen og Windows Server 2016 og nyere
  • Plattformversjon: 4.18.2108.7 eller nyere
  • PowerShell-versjon: PowerShell versjon 5.1, PowerShell ISE, ekstern PowerShell (4.18.2201.10+), PowerShell 7.x (4.18.2201.10+)

Hva er Microsoft Defender antivirusytelsesanalyse?

Hvis datamaskiner som kjører Microsoft Defender Antivirus opplever ytelsesproblemer, kan du bruke ytelsesanalyse til å forbedre ytelsen til Microsoft Defender Antivirus. Ytelsesanalyse for Microsoft Defender Antivirus i Windows 10, Windows 11 og Windows Server, er et PowerShell-kommandolinjeverktøy som hjelper deg med å bestemme filer, filtyper og prosesser som kan forårsake ytelsesproblemer på individuelle endepunkter under antivirusskanninger. Du kan bruke informasjonen som samles inn av ytelsesanalyse, til å vurdere ytelsesproblemer og bruke utbedringshandlinger.

På samme måte som mekanikere utfører diagnostikk og tjenester på et kjøretøy som har ytelsesproblemer, kan ytelsesanalyse hjelpe deg med å forbedre Defender Antivirus-ytelsen.

Bilde av konseptuell ytelsesanalyse for Microsoft Defender Antivirus. Diagrammet er relatert til: Microsoft Defender ytelsesanalyse, Defender ytelsesanalyse, Get-MpPerformanceRepor, New-MpPerformanceRecording, windows Defender, microsoft Defender, microsoft windows 10, microsoft Defender antivirus, micro soft windows 11, windows antivirus, microsoft antivirus, windows Defender antivirus, Windows 10 antivirus, microsoft windows Defender, ytelse Windows.

Noen alternativer for analyse inkluderer:

  • De øverste banene som påvirker skannetiden
  • Populære filer som påvirker skannetiden
  • De viktigste prosessene som påvirker skannetiden
  • De mest populære filtypene som påvirker skannetiden
  • Kombinasjoner – for eksempel:
    • toppfiler per filtype
    • øverste baner per utvidelse
    • øverste prosesser per bane
    • toppskanninger per fil
    • toppskanninger per fil per prosess

Kjører ytelsesanalyse

Prosessen på høyt nivå for å kjøre ytelsesanalyse innebærer følgende trinn:

  1. Kjør ytelsesanalyse for å samle inn et ytelsesopptak av Microsoft Defender antivirushendelser på endepunktet.

    Obs!

    Ytelsen til Microsoft Defender antivirushendelser av typen Microsoft-Antimalware-Engine registreres gjennom ytelsesanalysen.

  2. Analyser skanneresultatene ved hjelp av ulike opptaksrapporter.

Bruke ytelsesanalyse

Hvis du vil starte registrering av systemhendelser, åpner du PowerShell i administrativ modus og utfører følgende trinn:

  1. Kjør følgende kommando for å starte innspillingen:

    New-MpPerformanceRecording -RecordTo <recording.etl>
    

    der -RecordTo parameteren angir fullstendig baneplassering der sporingsfilen lagres. Hvis du vil ha mer cmdlet-informasjon, kan du se Microsoft Defender Antivirus-cmdleter.

  2. Hvis det er prosesser eller tjenester som antas å påvirke ytelsen, reproduserer du situasjonen ved å utføre de relevante oppgavene.

  3. Trykk ENTER for å stoppe og lagre innspillingen, eller CTRL+C for å avbryte innspillingen.

  4. Analyser resultatene ved hjelp av parameteren for ytelsesanalyse Get-MpPerformanceReport . Når du for eksempel utfører kommandoen Get-MpPerformanceReport -Path <recording.etl> -TopFiles 3 -TopScansPerFile 10, leveres brukeren med en liste over de ti mest populære skanningene etter de tre mest populære filene som påvirker ytelsen.

Hvis du vil ha mer informasjon om kommandolinjeparametere og alternativer, kan du se New-MpPerformanceRecording og Get-MpPerformanceReport.

Obs!

Når du kjører en innspilling, kjører du følgende kommando hvis du får feilmeldingen «Kan ikke starte opptak av ytelse fordi Windows Performance Recorder allerede tar opp», kjører du følgende kommando for å stoppe den eksisterende sporingen med den nye kommandoen: wpr -cancel -instancename MSFT_MpPerformanceRecording

Ytelsesjusteringsdata og informasjon

Basert på spørringen kan brukeren vise data for skanneantall, varighet (total/min/gjennomsnitt/maks/median), bane, prosess og årsak til skanning. Bildet nedenfor viser eksempelutdata for en enkel spørring av de 10 beste filene for skanningsinnvirkning.

Eksempelutdata for en grunnleggende TopFiles-spørring

Tilleggsfunksjonalitet: eksportering og konvertering til CSV og JSON

Resultatene av ytelsesanalysen kan også eksporteres og konverteres til en CSV- eller JSON-fil. Hvis du vil se eksempler som beskriver prosessen med «eksport» og «konverter» gjennom eksempelkoder, kan du se avsnittene nedenfor.

Fra og med Defender-versjonen 4.18.2206.Xkan brukere vise informasjon om skannede hopp over årsaker under «SkipReason»-kolonnen. Mulig verdier er:

  • Ikke hoppet over
  • Optimalisering (vanligvis på grunn av ytelsesårsaker)
  • Brukeren hoppet over (vanligvis på grunn av brukersettutelukkelser)

For CSV

  • Slik eksporterer du:
(Get-MpPerformanceReport -Path .\Repro-Install.etl -Topscans 1000).TopScans | Export-CSV -Path .\Repro-Install-Scans.csv -Encoding UTF8 -NoTypeInformation
  • Slik konverterer du:
(Get-MpPerformanceReport -Path .\Repro-Install.etl -Topscans 100).TopScans | ConvertTo-Csv -NoTypeInformation

For JSON

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

For å sikre maskinlesbar utdata for eksport med andre databehandlingssystemer, anbefales det å bruke -Raw parameteren for Get-MpPerformanceReport. Se avsnittene nedenfor for mer informasjon.

PowerShell-referanse

Det finnes to nye PowerShell-cmdleter som brukes til å justere ytelsen til Microsoft Defender Antivirus:

New-MpPerformanceRecording

Den følgende delen beskriver referansen for den nye PowerShell-cmdleten New-MpPerformanceRecording. Denne cmdleten samler inn et ytelsesopptak av Microsoft Defender Antivirus-skanninger.

Syntaks: New-MpPerformanceRecording

New-MpPerformanceRecording -RecordTo <String>

Beskrivelse: New-MpPerformanceRecording

Cmdleten New-MpPerformanceRecording samler inn et ytelsesopptak av Microsoft Defender Antivirus-skanninger. Disse ytelsesopptakene inneholder Microsoft-Antimalware-Engine og NT-kjerneprosesshendelser og kan analyseres etter innsamling ved hjelp av Cmdleten Get-MpPerformanceReport .

Denne New-MpPerformanceRecording cmdleten gir et innblikk i problematiske filer som kan føre til en reduksjon i ytelsen til Microsoft Defender Antivirus. Dette verktøyet leveres «SOM ER», og er ikke ment å gi forslag til utelatelser. Utelatelser kan redusere beskyttelsesnivået på endepunktene. Eventuelle utelatelser bør defineres med forsiktighet.

Hvis du vil ha mer informasjon om ytelsesanalyse, kan du se Ytelsesanalyse dokumenter.

Viktig

Denne cmdleten krever utvidede administratorrettigheter.

Eksempler: New-MpPerformanceRecording

Eksempel 1: Samle inn en ytelsesinnspilling og lagre den
New-MpPerformanceRecording -RecordTo .\Defender-scans.etl

Kommandoen ovenfor samler inn et ytelsesopptak og lagrer det i den angitte banen: .\Defender-scans.etl.

Eksempel 2: Samle inn et ytelsesopptak for ekstern PowerShell-økt
$s = New-PSSession -ComputerName Server02 -Credential Domain01\User01
New-MpPerformanceRecording -RecordTo C:\LocalPathOnServer02\trace.etl -Session $s

Kommandoen ovenfor samler inn et ytelsesopptak på Server02 (som angitt av argumentet $s for parameterøkten) og lagrer den i den angitte banen: C:\LocalPathOnServer02\trace.etl på Server02.

Parametere: New-MpPerformanceRecording

-RecordTo

Angir plasseringen der du vil lagre Microsoft Defender opptak av ytelse for beskyttelse mot skadelig programvare.

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

Angir PSSession-objektet der du kan opprette og lagre Microsoft Defender antivirusytelsesopptaket. Når du bruker denne parameteren, refererer RecordTo-parameteren til den lokale banen på den eksterne maskinen. Tilgjengelig med Defender-plattformversjon 4.18.2201.10.

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

Get-MpPerformanceReport

Den følgende delen beskriver Get-MpPerformanceReport PowerShell-cmdlet. Analyserer og rapporterer Microsoft Defender antivirusytelsesopptak.

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

Beskrivelse: Get-MpPerformanceReport

Get-MpPerformanceReport Cmdleten analyserer en tidligere samlet Microsoft Defender antivirusytelsesopptak (New-MpPerformanceRecording) og rapporterer filbanene, filtypene og prosessene som forårsaker størst innvirkning på Microsoft Defender Antivirus-skanninger.

Ytelsesanalysen gir et innblikk i problematiske filer som kan føre til en reduksjon i ytelsen til Microsoft Defender Antivirus. Dette verktøyet leveres «SOM ER» og er ikke ment å gi forslag til utelatelser. Utelatelser kan redusere beskyttelsesnivået på endepunktene. Eventuelle utelatelser bør defineres med forsiktighet.

Hvis du vil ha mer informasjon om ytelsesanalyse, kan du se Ytelsesanalyse dokumenter.

Støttede OS-versjoner:

Windows versjon 10 og nyere.

Obs!

Denne funksjonen er tilgjengelig fra og med plattformversjon 4.18.2108.X og nyere.

Eksempler: Get-MpPerformanceReport

Eksempel 1: Enkeltspørring
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopScans 20
Eksempel 2: Flere spørringer
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopFiles 10 -TopExtensions 10 -TopProcesses 10 -TopScans 10
Eksempel 3: Nestede spørringer
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopProcesses 10 -TopExtensionsPerProcess 3 -TopScansPerExtensionPerProcess 3
Eksempel 4: Bruke -MinDuration-parameter
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopScans 100 -MinDuration 100ms
Eksempel 5: Bruke -Raw-parameter
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopFiles 10 -TopExtensions 10 -TopProcesses 10 -TopScans 10 -Raw | ConvertTo-Json

Bruk av -Raw i kommandoen ovenfor angir at utdataene skal være maskinlesbare og lett konvertible til serialiseringsformater som JSON.

Parametere: Get-MpPerformanceReport

-TopPaths

Ber om en toppbanerapport og angir hvor mange toppbaner som skal sendes, sortert etter varighet. Aggregerer skanningene basert på banen og katalogen. Brukeren kan angi hvor mange kataloger som skal vises på hvert nivå og dybden på utvalget.

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

Angir rekursiv dybde som brukes til å gruppere og vise aggregerte baneresultater. Eksempel: «C:» tilsvarer en dybde på 1, «C:\Users\Foo» tilsvarer en dybde på 3.

Dette flagget kan følge med alle andre alternativer for øverste bane. Hvis den mangler, brukes standardverdien 3. Verdien kan ikke være 0.

- Type: Int32
- Position: Named
- Default value: 3
- Accept pipeline input: False
- Accept wildcard characters: False
Flagg Definisjon
-TopScansPerPath Angir hvor mange toppskanninger som skal angis for hver øverste bane.
-TopFilesPerPath Angir hvor mange toppfiler som skal angis for hver øverste bane.
-TopScansPerFilePerPath Angir hvor mange toppskanninger som skal sendes for hver toppfil for hver øverste bane, sortert etter «Varighet»
-TopExtensionsPerPath Angir hvor mange topputvidelser som skal sendes for hver øverste bane
-TopScansPerExtensionPerPath Angir hvor mange toppskanninger som skal produseres for hver topputvidelse for hver øverste bane
-TopProcessesPerPath Angir hvor mange toppprosesser som skal sendes for hver øverste bane
-TopScansPerProcessPerPath Angir hvor mange toppskanninger som skal utføres for hver toppprosess for hver øverste bane
-TopPathsPerExtension Angir hvor mange toppbaner som skal sendes for hver topputvidelse
-TopScansPerPathPerExtension Angir hvor mange toppskanninger som skal produseres for hver toppbane for hver topputvidelse
-TopPathsPerProcess Angir hvor mange toppbaner som skal sendes for hver toppprosess
-TopScansPerPathPerProcess Angir hvor mange toppskanninger som skal utføres for hver øverste bane for hver toppprosess
-MinDuration

Angir minimumsvarigheten for skanning eller total varighet for skanning av filer, utvidelser og prosesser som er inkludert i rapporten. godtar verdier som 0.1234567sec, 0.1234ms, 0.1us eller en gyldig TimeSpan.

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

Angir banen eller banene til én eller flere plasseringer.

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

Angir at utdata for ytelsesopptak skal være maskinlesbare og lett konvertible til serialiseringsformater som JSON (for eksempel via kommandoen Konverter til JSON). Denne konfigurasjonen anbefales for brukere som er interessert i satsvis behandling med andre databehandlingssystemer.

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

Angir hvor mange topputvidelser som skal sendes, sortert etter varighet.

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

Angir hvor mange topputvidelser som skal sendes for hver toppprosess, sortert etter varighet.

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

Ber om en rapport med toppfiler og angir hvor mange filer som skal sendes, sortert etter varighet.

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

Angir hvor mange filer som skal skrives ut for hver topputvidelse, sortert etter varighet.

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

Angir hvor mange filer som skal skrives ut for hver øverste prosess, sortert etter varighet.

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

Ber om en rapport med toppprosesser og angir hvor mange av de beste prosessene som skal sendes, sortert etter varighet.

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

Angir hvor mange toppprosesser som skal sendes for hver topputvidelse, sortert etter varighet.

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

Angir hvor mange toppprosesser som skal sendes for hver toppfil, sortert etter varighet.

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

Ber om en rapport for toppskanninger og angir hvor mange skanninger som skal sendes ut, sortert etter varighet.

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

Angir hvor mange toppskanninger som skal sendes for hver topputvidelse, sortert etter varighet.

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

Angir hvor mange toppskanninger som skal utføres for hver topputvidelse for hver øverste prosess, sortert etter varighet.

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

Angir hvor mange toppskanninger som skal sendes for hver toppfil, sortert etter varighet.

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

Angir hvor mange toppskanninger som skal sendes for hver toppfil for hver topputvidelse, sortert etter varighet.

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

Angir hvor mange toppskanninger for utdata for hver toppfil for hver øverste prosess, sortert etter varighet.

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

Angir hvor mange toppskanninger som skal utføres for hver toppprosess i rapporten Over prosesser, sortert etter varighet.

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

Angir hvor mange toppskanninger for utdata for hver toppprosess for hver topputvidelse, sortert etter varighet.

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

Angir hvor mange toppskanninger for utdata for hver øverste prosess for hver toppfil, sortert etter varighet.

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

Flere ressurser

Hvis du leter etter antivirusrelatert informasjon for andre plattformer, kan du se:

Tips

Vil du lære mer? Engage med Microsoft Security-fellesskapet i teknisk fellesskap: Microsoft Defender for endepunkt teknisk fellesskap.