Project

General

Profile

Logging

Eine wichtige Funktion eines jeden Netzwerks ist es, die in ihm ablaufenden Vorgänge zu Protokollieren. Unerlaubte Nutzung des Netzwerks lässt dich so erkennen und beweisen. Das Bereithalten von Gesprächsnachweisen ist auch essentieller Bestandteil, um Gespräche in Rechnung zu stellen. Ohne die Protokollierung hätte man keinen Nachweis, dass überhaupt eine Dienstleistung von einer Person genutzt wurde.

Eine Zentrale stelle, dieses Logging zu realisieren bietet der Lehrstuhl-Asterisk. Asterisk loggt Gespräche automatisch sowohl in einer SQL-Datenbank als auch unter /var/log/asterisk/. Geführte Gespräche lassen sich dort den einzelnen Teilnehmern zuweisen. Gespräche innerhalb des GSM Teils lassen sich auf die gleiche Weise auf dem OpenBSC-Asterisk einsehen.

Für verschiedene Anwendungen ist es auch sinnvoll, die Daten über den Zustand der BTS und von OpenBSC zu sichern. LCR kann alles Nachrichten, die von OpenBSC und sich selbst ausgegeben werden in eine Logdatei speichern. In der Datei options.conf lässt sich der Pfad dieser Logdatei angeben.

Was uns Probleme bereitete

Stürzt OpenBSC und LCR einmal ab, möchte man nicht nur die Logdateien nach der Ursache durchsuchen, sondern das GSM-Netz auch wieder neu starten. Möchte man hierfür eine SSH Verbindung nutzen, bietet sich nicht an, LCR einfach zu starten. Zwar wird durch die Änderungen in der options.conf wieder eine Logdatei angelegt, sobald die SSH-Verbindung aber getrennt wird, beendet sich auch LCR und OpenBSC. Der Befehl nohup löst die Problematik durch die Eingabe von

sudo nohup lcr start

Dadurch wird die Standardausgabe der Konsole und auch die Fehlerausgabe in die Datei nohup.out geleitet. Mit

sudo less -f nohup.out

lässt sich die aktuelle Ausgabe von LCR+OpenBSC auch unter der Verwendung von SSH anzeigen.