none
Tracciare il consumo percentuale di CPU da parte dei processi RRS feed

  • Domanda

  • Con "Gestione attività" riesco facilmente a visualizzare il consumo di CPU del mio server e la pecentuale di CPU utilizzata da ciascun processo.

    Ad esempio, vedo al momento la CPU è usata al 60% e che il processo XYZ utilizza al momento il 15% delle risorse di CPU.

    C'è un modo di tracciare nel tempo la percentuale di utilizzo della CPU da parte dei singoli processi?

    Il comando TASKLIST /V consente di tracciare il tempo di CPU salvando il valore su un file, ma è una cosa ben diversa.

    Quello che mi serve sapere è che in un dato momento il processo XYZ utilizzava il 40% delle risorse di CPU.

    Come lo posso tracciare?

    Grazie

    Mario



    martedì 25 febbraio 2020 16:59

Risposte

Tutte le risposte

  • Non hai specificato la versione di windows, indipendentemente da ciò, tutte le versioni hanno il performance monitor  che ti può dare le indicazioni che vuoi con un livello di dettaglio incredibile.

    Il modo più semplice per invocare il comando (dovrebbe funzionare con tutte le versioni di windows) dedicato a ciò:

    perfmon.exe
    potrai registrare tutti i parametri del server (es. h24) per poi analizzarli a posteriori

    oppure

    perfmon.exe /res

    https://techcommunity.microsoft.com/t5/ask-the-performance-team/windows-performance-monitor-overview/ba-p/375481

    https://stackoverflow.com/questions/69332/tracking-cpu-and-memory-usage-per-process

    https://docs.microsoft.com/it-it/windows-server/remote/remote-desktop-services/rds-rdsh-performance-counters

    Ciao Gastone


    Gastone Canali >http://www.armadillo.it


    Se alcuni post rispondono al tuo quesito(non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili. GRAZIE! Ricorda di dare un occhio ai link Click Here andHere


    martedì 25 febbraio 2020 23:34
    Moderatore
  • Grazie per i suggerimenti, anche se temo di aver formulato male la domanda.

    Il problema non è eseguire Performance Monitor, interattivamente o in background.

    Il problema è tracciare il valore "% CPU" mostrato da "Esplora risorse". Tutte le utility che ho provato, incluso il comando TASLKIST /V e il comando "Get-process" di PowerShell, mostrano il tempo di CPU, mentre non trovo come tracciare la percentuale di uso della CPU.

    Il motivo è capire nel corso del tempo quali processi fanno un uso elevato (forse anomalo) della CPU, per fini di troubleshooting.

    Per sintetizzare: come posso tracciare il valore del contatore "%CPU" mostrato da "Esplora Risorse"?

    Grazie

    Mario

    mercoledì 26 febbraio 2020 07:29
  • perchè? tra tutti i possibili counters di Performance Monitor non trovi la "% CPU" per singolo processo?

    Edoardo Benussi
    Microsoft MVP - Cloud and Datacenter Management
    e[dot]benussi[at]outlook[dot]it

    mercoledì 26 febbraio 2020 07:40
    Moderatore
  • Grazie per il suggerimento.

    E' un ottimo punto di partenza, e i valori esposti dall'oggetto "processo" come "% Tempo di Processore" mi sembra corrispondano a quanto mostrato in "Gestione Attività".

    Il problema, tuttavia, è tracciare i dati nel tempo.

    Ho provato a creare un "Insieme di agenti di raccolta dati" e ad attivarlo in background, ma produco un file .blg che riesco solo a vedere a video (una volta visualizzato posso anche esportarlo manualmente in .csv ma diventa estremamente macchinoso se fatto a regime per più server). 

    Per sintetizzare, posto che Performance Monitor mostra il contatore che cerco, come posso usarlo per tracciare la percentuale di uso della CPU da parte dei singoli processi salvando i dato in un file Excel?

    Grazie

    Mario

    mercoledì 26 febbraio 2020 09:59
  • vedi se questo può aiutarti

    https://mctexpert.blogspot.com/2012/10/export-your-performance-monitor-data-to.html


    Edoardo Benussi
    Microsoft MVP - Cloud and Datacenter Management
    e[dot]benussi[at]outlook[dot]it

    lunedì 2 marzo 2020 12:57
    Moderatore
  • Grazie per il suggerimento.

    E' un ottimo punto di partenza, e i valori esposti dall'oggetto "processo" come "% Tempo di Processore" mi sembra corrispondano a quanto mostrato in "Gestione Attività".

    Il problema, tuttavia, è tracciare i dati nel tempo.

    Ho provato a creare un "Insieme di agenti di raccolta dati" e ad attivarlo in background, ma produco un file .blg che riesco solo a vedere a video (una volta visualizzato posso anche esportarlo manualmente in .csv ma diventa estremamente macchinoso se fatto a regime per più server). 

    Per sintetizzare, posto che Performance Monitor mostra il contatore che cerco, come posso usarlo per tracciare la percentuale di uso della CPU da parte dei singoli processi salvando i dato in un file Excel?

    Grazie

    Mario

    i performance counter nascono  proprio per monitorare lo stato di uno o più server, se avessi letto i tre link  e approfondito un attimo, le domande sarebbero state più puntuali o forse sarebbero cessate...

    I blg sono esportabili in csv o tsv, oppure, con powershell puoi manipolarli

    https://blogs.technet.microsoft.com/mhendric/2016/11/17/quickly-finding-trends-in-large-volumes-of-performance-monitor-log-files/

    oppure

    relog -f csv filemontoraggio.blg -o miocsv.cs

    Tornando ai comandi per accedere direttamente

    Puoi avere le info sulla cpu usando powershell

    gwmi Win32_PerfFormattedData_PerfProc_Process |
    Sort PercentProcessorTime -desc |
    Select -first 7 Name, PercentProcessorTime |
    ConvertTo-Csv -NoTypeInformation

    oppure wmic

    wmic path win32_perfformatteddata_perfproc_process get Name, Caption, PercentProcessorTime, IDProcess /format:list|more

    o

    typeperf "\processo(*)\% Tempo processore" "\processo(*)\id process" -sc 4  -o cpu.csv

    Ciao Gas


    Gastone Canali >http://www.armadillo.it


    Se alcuni post rispondono al tuo quesito(non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili. GRAZIE! Ricorda di dare un occhio ai link Click Here andHere

    lunedì 2 marzo 2020 22:57
    Moderatore