CPU Auslastung, protokollieren
Hey Leute,
hab gestern hier Hilfe bekommen zum Thema RAM auslesen und dokumentieren.
Dies funktioniert auch sehr gut.
Nun müsste ich leider noch den CPU auslesen und in eine LogFile schreiben.
Gleiches Prinzip also.
Hat jemand ein Script dafür ?
Ich poste hier auch mal das Script für den RAM zur Hilfe und Information was Ich meine.
Danke euch
hab gestern hier Hilfe bekommen zum Thema RAM auslesen und dokumentieren.
Dies funktioniert auch sehr gut.
Nun müsste ich leider noch den CPU auslesen und in eine LogFile schreiben.
Gleiches Prinzip also.
Hat jemand ein Script dafür ?
Ich poste hier auch mal das Script für den RAM zur Hilfe und Information was Ich meine.
$i=0
while($true) {
% {
$Processes = get-process | Group-Object -Property ProcessName | % {
New-Object PSObject -property @{
Count=$_.Count
Name=$_.Name
Memory=($_.Group|Measure WorkingSet -Sum).Sum
}
} | sort -Descending Memory | Select Count,Name,@{n='Memory';e={($_.Memory/1000000000).ToString('0.00 GB')}}
"Durchlauf $_ - $((get-date).ToString('dd.MM.yyyy HH:mm:ss'))" | Out-File -Append "K:\DAT\TN\NZ\ALLE\10_Tagesgeschaeft\Dennis\log_$((get-date).ToString('yyyy-MM-dd')).txt"
$Processes | Out-File -Append "K:\DAT\TN\NZ\ALLE\10_Tagesgeschaeft\Dennis\log_$((get-date).ToString('yyyy-MM-dd')).txt"
$i++
write-host $i
Start-Sleep -s 150
if ($i -ge 400) {break}
}
}
Danke euch
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 562637
Url: https://administrator.de/contentid/562637
Ausgedruckt am: 25.11.2024 um 02:11 Uhr
4 Kommentare
Neuester Kommentar
Suche hier würde auch helfen:
Powershell Prozessorauslastung abfragen
Oder eben
Je nachdem was du halt so brauchst. Die Pipe an "out-file" spar ich mir hier mal zur Demo, das solltest du ja hoffentlich beherrschen .
Keep on onlineing ...
Gruß c.
Powershell Prozessorauslastung abfragen
get-counter -Counter "\\$env:COMPUTERNAME\prozessor(_total)\prozessorzeit (%)" -MaxSamples 10 -SampleInterval 1 | select -ExpandProperty CounterSamples | select CookedValue | %{"$([Math]::Round($_.CookedValue,2))%"}
Get-Process | sort CPU -Descending | Group ProcessName | %{[pscustomobject]@{ProcessName=$_.Group.ProcessName;'CPU-Time'=('{0:F2}' -f ($_.Group | measure CPU -Sum).Sum)}}
Keep on onlineing ...
Gruß c.
Zitat von @Dennis8799:
Die File hatte ich bereits, funktioniert an sich auch echt super.
Das Problem an diesem Script ist, dass egal wie ich bisher versucht habe die LogFile bzw. Out-File einzufügen,
es nicht funktioniert oder mir eine komplett leere LogFile ausgibt
Weil im Link der Parameter -Continuous verwendet wird der dauerhaft nur eine Anzeige ausgibt und niemals endet, deswegen siehst du auch nix im File weil der ewig weitermacht ohne zu enden . So wie ich es oben gepostet habe macht es als bsp. 10 Samples (1 pro Sekunde) und dann landen diese 10 Samples auch im File wenn du ein out-file dran pappst.Die File hatte ich bereits, funktioniert an sich auch echt super.
Das Problem an diesem Script ist, dass egal wie ich bisher versucht habe die LogFile bzw. Out-File einzufügen,
es nicht funktioniert oder mir eine komplett leere LogFile ausgibt
Einmal in Handbuch nachgeschlagen hättest du es selbst gemerkt ...