- Adam Bertram
@adbertram
- 6. April 2020, 11: 18 EDT
et af de mere oversete værktøjer i vinduer er Perfmon, ellers kendt som performance monitor. Dette værktøj har mange oversete evner, hvoraf den ene er evnen til at advare om forskellige metriske forhold. I denne artikel undersøger vi, hvordan man korrekt bruger Perfmons advarselsevne med en høj CPU-brug.
Hvad er Perfmon?
tilgængelig siden de tidlige dage af vinduer i forskellige iterationer er Performance Monitor tilgængelig som en MMC snap-in til vinduer, der er beregnet til at hjælpe med overvågning af systembrug og forskellige præstationsmålinger. Standardvisningen ved lanceringen fremhæver et par forskellige områder og realtidsmålinger.
- Performance Monitor-realtidsvisning af metrics
- Dataindsamlersæt-defineret indsamling af data over et givet tidsinterval
- rapporter-Sådan får du vist de data, der er indsamlet i Dataindsamlersættene
hvis Performance Monitor ikke startes som Administrator, vil dens hjælpeprogram være begrænset, og du kan muligvis ikke se Dataindsamlersættene eller rapporterne.
visning af Metrics
når du først klikker på Performance Monitor, får du vist en bevægelig linjegraf, der som standard er %Processor Time
. Dette er i sig selv ikke meget nyttigt, da dataene er en rullende værdi, og vi vil virkelig vide, om der er ugunstige forhold.
du kan tilføje yderligere metrics til denne graf ved at klikke på det grønne plus og tilføje flere metrics. Husk, at værdiskalaen muligvis ikke stemmer overens mellem forskellige datapunkter og derfor kan være mindre anvendelig, når den kombineres på en enkelt graf.
Dataindsamlingssæt
realtidsdata er nyttige, men ikke det, vi i sidste ende leder efter. Hvordan advarer vi på visse betingelser, i dette tilfælde, høj CPU-brug opretholdt over tid?
det er her Dataindsamlersæt kommer ind. Efter udvidelse af Dataindsamlingssæt skal du højreklikke på Brugerdefineret .
Du får mulighed for at navngive sættet, og om du vil oprette sættet fra en skabelon eller oprette Sættet manuelt. I dette tilfælde skal vi manuelt oprette vores konfiguration.
i dette tilfælde opretter vi en Præstationstælleralarm. Dette overvåger en given tæller, og så kan vi bede advarslen om at tage visse handlinger.
da vi ønsker at overvåge den samlede CPU-procentdel, er det mest vigtigt at vælge den rigtige metric, der skal overvåges. Her vælger vi Processor Kurt _Total ved at klikke på “Tilføj >>” ved siden af den valgte forekomst.
et problem er, at du får alle de Processor _total målinger. I sidste ende vil vi bare have \Processor(_Total)\% Processor Time
metric. For at fjerne de andre skal du vælge hver enkelt og klikke på knappen Fjern.
desværre, den måde, at fjerne værker, kan du ikke bare klikke på knappen Fjern flere gange, da det flytter det valgte element tilbage til toppen hver gang. Vælg hver metrisk individuelt, og klik på Fjern.
vi er nødt til nu at fortælle præstationstælleren, på hvilket tidspunkt alarmen skal starte, og i dette tilfælde søger vi kun at have den alarm, når den er over 95
.
til sidst skal du gemme og lukke Dataindsamlingssættet.
konfiguration af alarmer
med vores standardkonfiguration ude af vejen, skal vi nu konfigurere, hvilken Alarmhandling der skal finde sted. Der er to måder at indstille advarsler, alarm handling og Alarm opgave. Vælg din brugerdefinerede Lydopsamlersæt til høj CPU-brug, Højreklik på standardindgangen DataCollector01
og vælg Egenskaber.
den nemmeste måde at starte overvågningsposter på er at navigere til fanen Alarmhandling og klikke på afkrydsningsfeltet for “Log en post i Applikationsbegivenhedsloggen”. Du har også den praktiske mulighed for at starte et andet dataindsamlersæt, når kriterierne for en advarsel er opfyldt. På denne måde kan du samle yderligere logning efter behov. Her skal vi dog bare logge en post.
konfiguration af en Alarmopgave
dette er alt sammen godt, men i sidste ende får vi ikke en faktisk alarm i dette tilfælde, bare en ny hændelseslogindtastning. Under fanen Alarmopgave kan vi bede denne dataindsamler om at starte en planlagt opgave og sende nogle parametre, som derefter kan udføre de alarmhandlinger, vi vil have den til. For at gøre dette arbejde skal vi gøre to ting. Opret scriptet til at køre og selve den planlagte opgave.
Logging Script
nedenfor er et meget simpelt logging script. Vi læser i alarmmålingerne, der udsendes af Alarmopgaven, og sender disse resultater til en logfil.
HighCPUAlert.ps1
$Date = $args $Threshold = $args $Counter = $args $Value = " {1} {2} | {3}" -F $Date, 'High CPU', $Threshold, $Counter Add-Content -Value $Value -Path 'C:\HighCPUAlert.log'
planlagt opgave
her skal vi oprette den planlagte opgave, der rent faktisk vil køre scriptet efter påkaldelse af dataindsamleren. Vi bruger Strømshell til at oprette den planlagte opgave og bruger Strømshell 7 som kørselstid, som angivet af den eksekverbare pwsh.exe
.
$Params = @{ "Action" = New-ScheduledTaskAction -Execute "pwsh.exe" -Argument "-NoProfile -File C:\HighCPUAlert.ps1 $(Arg0)" "Principal" = New-ScheduledTaskPrincipal -UserId "LOCALSERVICE" -LogonType ServiceAccount "Settings" = New-ScheduledTaskSettingsSet } New-ScheduledTask @Params | Register-ScheduledTask 'HighCPUAlert'
indtil Strømshell 7 formelt frigives, kan den eksekverbare være pwsh-preview.exe
.
konfiguration af Alarmopgave
endelig skal vi konfigurere Alarmopgaven på dataindsamleren. For at gøre dette skal du navigere til egenskaberne igen på DataCollector01
og indtaste følgende detaljer.
vi citerer opgaveargumenterne, fordi de kommer ind som strenge til Magtskal. Ved at citere dem gør vi det derfor let at adskille argumenterne efter indeks, dvs.
$arg
eller$arg
.
når du klikker på Gem, bliver du muligvis bedt om en legitimationsoplysninger, dette skal være en bruger med administratoradgang.
kører dataindsamleren
ved at højreklikke på Dataindsamlingssættet, høj CPU-brug og vælge Start, begynder du indsamlingsprocessen. Hvis du overvåger de planlagte opgaver, vil du se den nyoprettede planlagte opgave regelmæssigt køre afhængigt af overvågningsintervallet og tærskelsættet.
konklusion
ved at bruge de indbyggede overvågningsværktøjer i vinduer kan du strukturere nogle nyttige og kraftfulde overvågningsløsninger omkring kerneværktøjer og Strømshell. Med denne fleksibilitet vil du være i stand til at komme til bunden af næsten ethvert problem, der kan diagnosticeres via metrisk dataindsamling!
Adam Bertram er en 20+ år veteran af IT og en erfaren online business professionel. Han er konsulent, Microsoft MVP, blogger, træner, offentliggjort forfatter og indholdsmarkedsfører for flere teknologiselskaber. Catch op på Adams artikler på adamtheautomator.com, tilslut på LinkedIn, Eller følg ham på kvidre på @adbertram.Læs Hele Bio ”