anna coobs
anna coobs

Reputation: 111

How can know the usage of CPU of a windows service in an interval of time with PowerShell?

I am a beginner with PowerShell, How can know the usage of CPU of a windows service in an interval of time (for example for one hour) with PowerShell? Something like this:

Get-Service | Get-counter

Thank so much

Upvotes: 0

Views: 602

Answers (1)

Arun
Arun

Reputation: 324

For CPU usage you need to use the get-process commandlet and then map the process name with the corresponding service.

Here is one of the past discussion thread where the get-process is discussed

Listing processes by CPU usage percentage in powershell

Sample code here

$Details = @()
$AllRunningServices = Get-CimInstance -class win32_service | Where-Object {$_.State -eq 'Running'}  | Select-Object ProcessId , Name 

foreach($procid in $AllRunningServices)
{
$Details += Get-Process | Where-Object {$_.Id -eq $procid.ProcessId} | Select-Object ProcessName, Id, CPU , @{Name = "serviceName" ; Expression={$procid.Name}}

}

$Details |Sort-Object -Property CPU -Descending | ft

Upvotes: 1

Related Questions