Speicherverbrauch und CPU-Usage tracken?

theSplit

1998
Registriert
3 Aug. 2014
Beiträge
5.857
Moin,

mal wieder eine Frage, ich würde gerne den Speicherverbrauch und die CPU Nutzung von Anwendungen oder des Systems tracken.
Das ganze soll sich wie eine "timeit Programmname" ausführen lassen, und die CPU Auslastung und den Speicherverbrauch ermitteln.

Allerdings würde die Anwendung mehrere Stunden laufen, also sollte das Tracking soweit regelbar sein, das man nur alle X Sekunden/Minuten einen Datenpunkt erstellt bei dem die Werte erfasst werden.
Alternativ wäre das man die CPU Frequenz und die Speicherauslastung des System über eine gewisse Laufzeit ermittelt - eventuell mit einem Threshold, wenn RAM/CPU mehr als X% ausgelastet wird, dass das protokolliert wird. Oder ähnliches.

Gibt es da neben Valgrind (für Speicher) noch andere Tools die das irgendwie ermitteln können? Oder vom System auslesen können und protokollieren?
 
@theSplit: [src=bash]sudo apt-get install munin[/src]

Was du dann letztendlich alles damit monitoren willst, kannst du über Plugins regeln (Symlinks im Plugin-Ordner nach den entsprechenden Plugins in /usr). Wird dir am Ende alles hübsch auf ner Website angezeigt, auf Wunsch sogar mit SMART-Daten (bei installierten smartmontools).
 
  • Thread Starter Thread Starter
  • #3
Installiert habe ich es und Munin-Node läuft auch, was ich nicht hinbekommen habe, meinen "Master" einzurichten, IP der Node war eingestellt mit direkter IP im Netzwerk.
Auf der Node habe ich für den IP Access per Regex "192.168.2.1$" für den Master angelegt, sollte also eigentlich auch gepasst haben.

Ich hab gesehen das Munin auch sofort unter "/var/cache/www/munin" angefangen hat zu protokollieren (auf dem Master wohlgemerkt) - die der Node hatte ich dort jetzt noch nicht gesehen in den Statistiken. Ich werde wohl nicht darum herum kommen diese von dem Gerät zu kopieren und dann anzeigen zu lassen... eine lokale HTTP Verbindung auf den Master habe ich so nicht öffnen können, mir fehlen auch diverse Programme aktuell wie Munin-httpd oder Graph (was alles in der Doku steht) - dafür kann man ja die HTML Dateien so öffnen.

Hilft aber dann schon etwas weiter wenn es dann ordentlich aufzeichnet, ich lasse die Node aber mal aufzeichen, vielleicht hilft das schon.
 
  • Thread Starter Thread Starter
  • #5
Okay, die Software geht ja noch mal 10 Schritte weiter.... schade das ich gerade keinen Guide gesehen habe wie man das installiert und scheinbar läuft es auch nicht überall wie es aussieht.
Aber hab gerade mal die Demo angeschaut, ziemlich cool - auch wenn mir die ganzen Metrix"e" jetzt nur wage etwas sagen ;)

Wenn du sowas in kleiner und mit etwas weniger tada, für CPU + RAM + SWAP, Drives findest, sag bitte Bescheid! :)

Ansonsten hoffe ich das Munin gerade Daten sammelt :T
 
Wenn du sowas in kleiner und mit etwas weniger tada, für CPU + RAM + SWAP, Drives findest, sag bitte Bescheid! :)

?

The data extracted are also stored into RRD database and presented as graphs.

LSEiFuy.png


Available graphs are:
  • CPU Loads
  • Network
  • Disk Boot
  • Disk Root
  • Swap
  • Memory
  • Uptime
  • Temperature
 
@theSplit: Der Node sammelt die Daten, der Master holt sie ab. Ich hab dir beide auf einem System installieren lassen, du musst jetzt nur noch deinem Apache sagen, dass er Munin an diese und jene IPs ausliefern darf. Dann hast du den Käse gegessen. So viel mit Anleitung ist da nicht, das Tool ist quasi selbsterklärend.
 
  • Thread Starter Thread Starter
  • #8
@phre4k - Danke dir, für den Pi auch nicht schlecht.

@Metal_Warrior: Ich will Munin auch nichts anlasten, die Node/Master hat alles fein säuberlich protokolliert heute und mir die HTML Dateien generiert.

Das Prinzip ist mir schon bewusst, ich verstehe auch das Konzept, was ich dann aber nicht verstehe, das man Apache, weiß gar nicht ob der überhaupt installiert ist... - dafür noch extra einstellen muß, das war in der Dokumentation jedenfalls so nicht ersichtlich, ich dachte das macht Munin.conf bzw. munin-node.conf mehr oder minder.

Hatte mir Munin installiert auf dem Haupt-PC und bin davon ausgegangen das ich darüber über das "munin:" Protokoll direkt auf dem Pi zugreifen kann. Also das ich auf dem Pi den munin-node laufen lasse und über den Haupt-PC darauf zugreifen kann über den Internen Webserver - den ich aber auch in Debian Unstable so nicht vorgefunden hatte. Hat mich verwundert.

Die Leistungsaufnahme hat sich aber dargestellt. Von daher war das schon okay, außer das ich manuell auf den Client www Daten zugreifen mußte, über das Gerät selbst.

Aber wenn ich die Settings wie oben getätigt hatte, hat es also nur am Apache gelegen der die Anfrage blockiert/nicht weitergeleitet hat als ich mit dem Hauptrechner dararuf zugreifen wollte?
Ist mir aktuell nicht ganz schlüssig wie das von statten geht. ;)
 
@theSplit: Ich poste dir morgen mal, wie solche verteilten Configs auszusehen haben. Ist nicht schwer, aber ich pack jetzt nicht mehr das Notebook aus, um dir da was zusammen zu kopieren. Für den reinen Node brauchst du natürlich keinen Apache.
 
  • Thread Starter Thread Starter
  • #11
Moin, ja das wäre super - also im Grunde benötige ich nur die Info wie ich veranlassen kann das:
a) Munin einen HTTP Request annimmt so das ich auf das Webinterface kommen ohne in /var/cache/munin/www/index.html aufzurufen
b) der Master sich die Daten von der Node bezieht (und ob noch irgendwas an Firewall/Freigaben gemacht werden muß, damit der Master die Node "pingen" kann)

Wäre halt gut wenn das Setup von Master <-> Client (Node) kommukation ausgehen würde, die sich nicht auf dem gleichen Rechner befinden.
Irgendwie müsste Munin ja je Sekunde/Minute/Stunde (was man ja einstellen kann) den oder die Nodes "anpingen" und sich die Daten für das Graphen beschaffen, nehme ich an.

Aber gut, wenn du mir da etwas unter die Arme greifen kannst, wäre das super - ich hab mir auch schon die Dokumentation durchgelesen, wüsste aber nicht wo mein genauer Fehler jetzt gelegen hat ;)

Hatte auch die Node mit:
[pi.localdomain]
IP
use_node_name=yes

verwendet, aber nur meinen lokalen Host gesehen in der Übersicht.
Hätte ich "munin-run" ausführen sollen? Ich weiß es nicht ;)
 
  • Thread Starter Thread Starter
  • #13


Hm, danke... ich glaube der Fehler lag vielleicht wirklich in der erlaubten IP, das mit "address IP" und "use_node_name yes" hatte ich eingestellt - aber nicht die Regex in der Form: "allow ^192\.168\.X\.Y$" da hatte ich glaube ich eine falsche IP eingetragen...

Ich teste das nachher nochmal, danke für den Link zu den Ubuntu-usern ;)


Update: Nach etwas herumfummeln hab ich dann die Node aktivieren können, ich glaube ich hatte beim vorherigen Versuch falsche Daten und hab auch den Service nicht neu gestartet nach den munin.conf Änderung, das ist ja sehr gut erklärt im Ubuntuwiki... :)

Jedenfalls habe ich jetzt eine Verbindung. :T
 
Zuletzt bearbeitet:
Zurück
Oben