Perl-Skript für periodische Kommandoaufrufe
Netz-Journal
von Michael Schilli
Erschienen im Linux-Magazin
2008/02
Was der Rechner im eigenen Netz treibt, offenbart ein Aufruf von »netstat«. Mit ein paar Perl-Modulen lässt sich daraus ein Tool entwickeln, das die Daten dynamisch anzeigt, ganz nach dem Vorbild von Top.
Wer wissen will, welche Ports gerade für Netzwerkaufgaben in Verwendung sind, ruft »netstat« auf. Das praktische Linux-Utility kennt mehrere Modi, die der Benutzer über Kommandozeilenoptionen ansteuert. Die Option »-s« produziert beispielsweise eine Statistik des Netzwerkverkehrs (Abbildung 2), »-put« hingegen gibt die Ports aller Applikationen aus, die gerade über TCP kommunizieren (Abbildung 1). Beide Ausgaben sind nützlich, doch eigentlich interessiert auch die zeitliche Abfolge, nicht nur ein Sekundenschnappschuss.

|
Abbildung 1: Die Ausgabe des Kommandos »netstat -put« zeigt eine Liste aktiver TCP-Ports.
|

|
Abbildung 2: Das Kommando »netstat -s« liefert statistische Daten über den von Linux bewältigten Netzwerkverkehr.
|
Top fürs Netzwerk
Das Vorbild für eine solche dynamische Ausgabe liefert das Utility »top«, das Anzeigen für die Auslastung des Rechners, den Speicherverbrauch und weitere Eckdaten der laufenden Prozesse ständig auffrischt. Aus der statischen Ausgabe von »netstat« eine entsprechende dynamische Terminalapplikation zu erzeugen ist dank CPAN aber nicht weiter schwer.
Das Modul Curses::UI, das im Perl-Snapshot [2] schon einmal für einen Video-Selektor zum Einsatz kam, liefert auch hier das passende Framework. Es sorgt für die dynamischen Ausgaben und ermöglicht es, auf Tastendrücke des Users zu reagieren. Seine Eventschleife lässt sich leicht in den Kernel des Perl-Objekt-Environments (POE) einbinden, das den Ablauf vieler verschiedener Tasks in einem Prozess und einem Thread möglich macht.
Nicht einfrieren!
Hier ergibt sich bei allen GUI-Applikationen, die andere Programme aufrufen, ein Problem: Während die externe Anwendung läuft, reagiert die aufrufende nicht mehr auf Benutzereingaben und Mausklicks. Beim Anwender entsteht das Gefühl, sie sei eingefroren.
Das Kommando »netstat« läuft im Allgemeinen zwar recht zügig durch, mit der Option »-put« löst es jedoch auch IP-Adressen durch einen Reverse-DNS-Aufruf in Hostnamen auf. Bei einem langsamen DNS-Server oder vielen Sockets führt dies zu beachtlichen Verzögerungen. Dies ließe sich durch die Option »-n« verhindern, der Anwender müsste sich dann nur mit IP-Adressen begnügen. Das Beispiel besteht aber auf dem Luxus der Namensauflösung.
| Whitepaper |
|
Usage Landscape Enterprise Open Source Data Integration
Die Nachfrage nach Datenintegrationslösungen für Unternehmen ist zunehmend gestiegen und vor allem das Interesse an Open Source Technologien wird immer größer. Doch wie und von wem werden Open Source Datenintegrationslösungen genutzt und welches Nutzungsverhalten lässt sich daraus ableiten? Das vorliegende White Paper präsentiert die Erfahrungswerte von über 1000 Open Source Nutzern und liefert fundierte Antworten auf diese Fragen.
Download PDF (Registrierung erforderlich)
|
|
Daten Migration - Eine Publikation von Bloor Research
Datenmigrationsprojekte überschreiten häufig das Budget, neigen zu Verzögerung und werden unter Umständen komplett abgebrochen. Bloor Research ist eines der weltweit führenden IT-Forschungs-, Analyse- und Beratungsunternehmen und wird in dem vorliegenden White Paper die wichtigsten Aspekte dieser Problematik näher beleuchten. Ferner werden praktische Empfehlungen für erfolgreiche Migrationsprojekte gegeben, die Sie auf Ihr nächstes Projekt übertragen können.
Download PDF (Registrierung erforderlich)
|
Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links"
nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedrucken Fassung entsprechen.
|