Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- param($target)
- $Processes = get-process -ComputerName "percy" | Group-Object -Property ProcessName
- Write-Host '<?xml version="1.0" encoding="UTF-8"?><prtg>'
- Write-Host (@"
- <result>
- <channel>{0}</channel>
- <value>{1}</value>
- <Unit>Count</Unit>
- </result>
- "@ -f "Running processes",$Processes.Count)
- foreach($Process in $Processes)
- {
- $Obj = New-Object psobject
- $Obj | Add-Member -MemberType NoteProperty -Name Name -Value $Process.Name
- $Obj | Add-Member -MemberType NoteProperty -Force -Name CPU -Value ($Process.Group | Measure-Object CPU -Sum).Sum
- Write-Host (@"
- <result>
- <channel>{0}</channel>
- <value>{1}</value>
- <Unit>CPU</Unit>
- <LimitMode>1</LimitMode>
- <LimitMaxWarning>25</LimitMaxWarning>
- <LimitMaxError>40</LimitMaxError>
- </result>
- "@ -f $Obj.Name,$Obj.CPU)
- }
- Write-Host ("<Text>{0} processes are currently running</Text></prtg>" -f $Processes.Count);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement