Rechnerüberwachung mit Conky

vorhergehende Artikel in: Linux
26.11.2013

Das Überwachen entfernter Rechner hat unzählige Administratoren und Programmierer vor Herausforderungen festellt, die sie unterschiedlich gelöst haben. Hier wird eine Variation dieser Lösungen vorgestellt.

Im Internet findet man hin und wieder Artikel zum Thema "Wie überwache ich meine Computer?". Diese Artikel gehen von unterschiedlichsten Voraussetzungen und Einsatzszenarien aus. Manche davon benutzen Conky. Am einfachsten ist es, Conky auf dem entfernten Rechner zu starten und das Display auf den lokalen Rechner umzuleiten. So überwache ich zum Beispiel meinen Download-PC: einen Laptop, der schon sehr alt ist, allerdings auch phänomenal wenig Strom verbraucht und ansonsten sowieso nir rumsteht. Der Stromverbrauch ist allerdings nur dann niedrig, wenn das Display ausgeschaltet ist. Wenn ich an einem anderen PC arbeite, dann möchte ich sehen, wie weit der Download gediehen ist.

Diese Möglichkeit der Rechnerüberwachung mit Conky hat Einschränkungen: auf dem Rechner, der überwachen soll, muß ein X-Server laufen. Das schließt zunächst mal Android-Geräte aus (wenn man nicht frickeln will) und Windows sowieso.

Ich fand aber einen sehr interessanten Artikel, der beschreibt, wie man Conky dazu bringen kann, seine Ergebnisse in Shell-Variablen abzulegen. Von dort kann man sie dann mittels geeigneter Skripte und/oder Programme weiter verarbeiten und zum Beispiel zum Versenden von Nachrichten an den Administrator verwenden, wenn bestimmte Schwellwerte über-/unterschritten werden.

Das war der Anstoß, den ich gebraucht hatte: Eigentlich wollte ich die Informationen von Conky in eigenen Anwendungen weiter verarbeiten, hatte aber noch nicht die zündende Idee, wie ich an die Informationen gelangen könnte. Aber hier lag die Antwort ja klar vor mir: Wenn man den Output von Conky als Shell-Variablen-Liste konfigurieren kann, kann man doch bestimmt auch JSON daraus erzeugen?

Gesagt - getan: Hier sieht man ein Beispiel eines Aufrufes von Conky auf einem Rechner, der das Ergebnis in eine temporäre Datei zwischenspeichert:

 
ssh user@host 'cat >/tmp/crc1 <<EOF && conky -c /tmp/crc1 #&& rm /tmp/crc1
out_to_x no
out_to_console yes
total_run_times 1
TEXT
{"fs_free":"\${fs_free /home}",
"loadavg":{
"1min":"\${loadavg 1}",
"5min":"\${loadavg 2}",
"15min":"\${loadavg 3}"},
"mem":{
"memeasyfree":"\$memeasyfree",
"memperc":"\$memperc"},
"time":"\${time %H:%M}"
}
EOF' >/tmp/2.json
 

Das Ergebnis dieses Aufrufes ist eine Datei namens 2.json im Verzeichnis /tmp, die folgenden Inhalt hat:

{"fs_free":"46.2GiB",
"loadavg":{
"1min":"0.16",
"5min":"0.10",
"15min":"0.08"},
"mem":{
"memeasyfree":"921MiB",
"memperc":"7"},
"time":"06:36"
}

Artikel, die hierher verlinken

Conky & InfluxDB

29.06.2019

Nachdem ich hier schon länger nichts mehr über Conky berichtet habe, aber immer noch ein großer Fan bin habe ich nun versucht, Conky mit InfluxDB zu verbinden.

Bash-Monitoring

02.01.2018

Ich wollte versuchen, ob es nicht möglich wäre, eine zuverlässige, nur auf der Bash basierende Lösung zur Überwachung eines Rechners zu finden.

Gnu Screen-Sitzung ein wenig aufgepeppt

27.07.2014

Über die Vorzüge des schönen Programms Gnu Screen muß man glaube ich nichts mehr sagen. Ich möchte hier eine Konfiguration vorstellen, die ich im Produktiveinsatz als überaus praktisch empfinde...

Conky Remote Manager

17.05.2014

Wie in einem vorhergehenden Artikel beschrieben, ist es sehr einfach möglich, Conky als Diagnosetool für Rechnergesundheit einzusetzen, wenn man auf die unmittelbare graphische Aufbereitung der Daten durch Conky selbst verzichtet.

Remote Conky & Android

21.01.2014

Wie ich bereits im Artikel zum Thema Rechnerüberwachung mit Conky anmerkte, ist die Überwachung mit Conky an bestimmte Voraussetzungen gebunden. Durch die Benutzung von JSON als Ausgabeformat werden die Beschränkungen aufgeweicht.

Remote Conky & Python

16.01.2014

Wie ich bereits im Artikel zum Thema Rechnerüberwachung mit Conky anmerkte, ist die Überwachung mit Conky an bestimmte Voraussetzungen gebunden. Durch die Benutzung von JSON als Ausgabeformat werden die Beschränkungen aufgeweicht.

Remote Conky & dWb+

08.01.2014

Wie ich bereits im Artikel zum Thema Rechnerüberwachung mit Conky anmerkte, ist die Überwachung mit Conky an bestimmte Voraussetzungen gebunden. Durch die Benutzung von JSON als Ausgabeformat wird die Nutzung in dWb+ möglich.

Remote Conky & Java

03.12.2013

Wie ich bereits im Artikel zum Thema Rechnerüberwachung mit Conky anmerkte, ist die Überwachung mit Conky an bestimmte Voraussetzungen gebunden. Durch die Benutzung von JSON als Ausgabeformat werden die Beschränkungen aufgeweicht.

Alle Artikel rss Wochenübersicht Monatsübersicht Github Repositories Gitlab Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Certstream, InfluxDB, Grafana und Netflix

    16.04.2019

    Nachdem ich vor kurzem über mein erstes Spielen mit dem certstream berichtete, habe ich weitere Experimente gemacht und die Daten zur besseren Auswertung in eine InfluxDB gepackt, um sie mit Grafana untersuchen zu können.

    Weiterlesen...

Neueste Artikel

  • Die sQLshell ist nun cloudnative!

    Die sQLshell hat eine weitere Integration erfahren - obwohl ich eigentlich selber nicht viel dazu tun musste: Es existiert ein Projekt/Produkt namens steampipe, dessen Slogan ist select * from cloud; - Im Prinzip eine Wrapperschicht um diverse (laut Eigenwerbung mehr als 140) (cloud) data sources.

    Weiterlesen...
  • LinkCollections 2024 III

    Nach der letzten losen Zusammenstellung (für mich) interessanter Links aus den Tiefen des Internet von 2024 folgt hier gleich die nächste:

    Weiterlesen...
  • Funktionen mit mehreren Rückgabewerten in Java

    Da ich seit nunmehr einem Jahr bei meinem neeun Arbeitgeber beschäftigt und damit seit ungefähr derselben Zeit für Geld mit Python arbeite, haben sich gewisse Antipathien gegenüber Python vertieft (ich kann mit typlosen Sprachen einfach nicht umgehen) - aber auch einige meiner Gründe, Python zu lieben sind ebenso stärker geworden. Einer davon ist der Fakt, dass eine Methode in Python mehr als einen Wert zurückgeben kann.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.