Ich suche nach einer Anwendung oder Codezeile, mit der ich einen Prozess beobachten, die Informationen in einer Reihe von Variablen speichern und die gesammelten Informationen in eine Datei einfügen kann.
Ich habe es mit Variationen von versucht, top
aber kein Glück. Ich verwende mehrere virtuelle CentOS-Server. VM ist ein 2 GB RAM, 2 Prozessor.
Ein Skript, das über einen bestimmten Zeitraum arbeitet, während Zeilen mit den Informationen in eine Textdatei geschrieben werden, damit ich am Ende eine Art Tabelle mit den Daten haben kann, würde funktionieren.
Ich werde den Server einem Stresstest unterziehen und möchte die Daten haben, um Statistiken zu erstellen.
Wenn Sie sich für ein genaues Timing interessieren und die CPU in Prozent wünschen:
quelle
Ich würde vorschlagen
sadc
/sar
.quelle
sar
. Einige Versionen verwendensar -x PID
anderepidstat -p PID
.Sie versuchen zu beobachten, wie viel CPU-Zeit ein bestimmter Prozess benötigt.
Ich wollte ein CPU-Stat-Tool für CentOS vorschlagen . Dies gilt jedoch für das gesamte System, nicht nur für einen Prozess.
Jeder Prozess zeigt die CPU-Zeit in der Ausgabe von ps:
Analysieren Sie zu diesem Zeitpunkt die Ausgabe mit Python, arbeiten Sie an einer Datumsberechnung, und Sie sind goldrichtig.
quelle
Der folgende Befehl ermittelt alle 40 Sekunden den Durchschnitt der CPU- und Speicherauslastung für einen bestimmten Prozess (pid).
Ausgabe für meinen Fall (erste zwei Zeilen für die CPU-Auslastung, zweite zwei Zeilen für den Speicher):
quelle