2009-02-10 4 views
16

Auf einer Linux-Box, ich brauche für die letzte Woche der durchschnittliche CPU-Auslastung pro Stunde angezeigt werden soll. Sind diese Informationen irgendwo gespeichert? Oder muss ich ein Skript schreiben, das alle 15 Minuten aufwacht, um /proc/loadavg in eine Logdatei zu kopieren?Linux Anzeige durchschnittliche CPU-Auslastung für letzte Woche

EDIT: Ich bin keine Werkzeuge zu verwenden, um andere als diejenigen, die nicht erlaubt, die mit Linux kommen.

+0

nicht erlaubt? Ist das ein Schul-/Hochschulprojekt? –

Antwort

12

Soweit ich weiß, dass es nicht überall gespeichert ... Es ist eine triviale Sache, sowieso zu schreiben. Fügen Sie einfach etwas wie

cat /proc/loadavg >> /var/log/loads 

zu Ihrem crontab hinzu.

Beachten Sie, dass es Überwachungs-Tools gibt (wie Munin), die diese Art von Sache für Sie tun können, und generieren hübsche Grafiken von ihm zu booten ... sie könnten jedoch für Ihre Situation übertrieben sein.

23

Sie möchten vielleicht überprüfen sar (man page), es passt Ihre Anwendung gut.

Systemaktivität Reporter (SAR) - erfassen wichtige Systemleistungsmetriken bei periodischen Abständen.

Beispiel von IBM Developer Works Article:

einen Eintrag in Ihrem Root-crontab hinzufügen

# Collect measurements at 10-minute intervals 
0,10,20,30,40,50 * * * * /usr/lib/sa/sa1 
# Create daily reports and purge old files 
0     0 * * * /usr/lib/sa/sa2 -A 

Dann können Sie diese Informationen einfach Befehl mit einem sar Abfrage (alle Info heute angezeigt):

root ~ # sar -A 

oder nur für eine bestimmte Tage Protokolldatei:

root ~ # sar -f /var/log/sa/sa16 

Sie können es in der Regel finden in dem sysstat Paket für Ihre Linux-Distribution

+0

+1, klingt wie ein nettes kleines Werkzeug –

+1

Ich schaute auf sar. Aber soweit ich sehen kann, zeigt es nur die aktuelle CPU. Ich müsste es alle paar Sekunden laufen lassen und Mittelwerte machen. Bitte sagen Sie mir, wenn ich falsch liege, wie es nützlich wäre. – thornate

+0

Sie setzen sar auf, um eine Datei mit dem Crontab-Beispiel in meiner Antwort zu protokollieren. Sie können dann sar verwenden, um das generierte Protokoll abzufragen, oder eine Anzahl von Protokollen für die gewünschten Statistiken (Durchschnitt laden). –

1

ich bei Multi Router Traffic Grapher (MRTG) suchen würde empfehlen. zusammen mit schönen Charts zur Analyse

snmpd Mit der durchschnittlichen Belastung zu lesen, wird es automatisch im Durchschnitt bei jedem Zeitintervall und Länge berechnen.

Jemand hat geschrieben bereits eine CPU usage example.

Verwandte Themen