Ich bin Alexander und mache aktuell meine Ausbildung als Fachinformatiker in der Anwendungsentwicklung bei ITGAIN. In diesem Beitrag möchte ich Dir etwas über mein erstes Projekt erzählen, welches ich in meinem ersten Ausbildungsjahr erarbeitet habe. Ein Performancemonitoring Tool zur Überwachung von Systemen.

Die Kernkomponente eines System Monitorings 

Um mir als Azubi den späteren Einstieg in unsere Produktserie Speedgain zu erleichtern, wurde mein erstes Projekt mit diesem verknüpft. Ich habe ein Programm entwickelt, welches die Performance eines Systems überwacht und aufzeichnet. Die ersten Versionen wurden zunächst in der Sprache Python umgesetzt, da diese einsteigerfreundlich ist. In späteren Versionen habe ich das Programm dann in Java umgeschrieben und erweitert, da dies die Programmiersprache ist, in der ich im späteren Verlauf der Ausbildung arbeiten werde. Zunächst habe ich mir einen Plan in Form von Sequenz-, Aktivitäts- und Klassen-Diagrammen gemacht, um einen groben Ablauf zu skizzieren. Danach habe ich ein Grundgerüst an benötigten Klassen angelegt und schrittweise mit Funktionen ausgefüllt. Nach jeder Implementierung habe ich diese auf ihre Funktionalität überprüft und gegebenenfalls korrigiert. Hier ein Auszug aus dem Python-Code, der die Scheduler-Klasse zeigt:

  
          class Scheduler(): 

liste= []

def addCollector(self,coll): #Collector wird zur Liste hinzugefügt

self.liste.insert(self.liste.__len__(),coll)

def runCollectorList(self): #Collect Funktion wird aufgerufen

for collector in self.liste:

t=threading.Thread(target=collector.collect, name=collector.bezeichnung)

t.start()

Was genau kann mein Programm? 

Das Programm liest die Auslastung verschiedener Hardware-Komponenten des Systems aus. Wie z. B. die Auslastung des Arbeitsspeichers oder der Festplatten. Die Ausgabe der Informationen lässt sich dann in der Konsole ausgeben oder wahlweise in Form einer CSV-Datei oder Datenbank abspeichern. 

Ich habe das Programm in verschiedene Collector-Klassen aufgeteilt, welche jeweils für das Sammeln der Daten einer bestimmten Komponente des Systems zuständig sind. Das Programm lässt die Collectoren in verschieden Threads laufen. Das bedeutet, sie laufen unabhängig und parallel voneinander. Diese werden dann von einer Scheduler-Klasse verwaltet. Steuern lässt sich das Programm über eine Config-Datei, welche von dem Programm eingelesen wird.

ITGAIN Output
Beispielausgabe des Programms

Welchen Mehrwert liefert ein System Monitoring Tool? 

Die Anwendung hilft beim Überwachen der Performance von Systemen. Es zeichnet die genutzten Ressourcen auf, welche von laufenden Programmen genutzt werden. Diese sind die Auslastung des Arbeitsspeichers, die Auslastung der Festplatten, die CPU-Zeit und die Top 10 Prozesse mit der längsten Laufzeit. So kann frühzeitig eine mögliche Hardwareüberlastung erkannt werden. Woraus nun entsprechenden Maßnahmen gezogen werden können, um einen potenziellen Systemausfall zu vermeiden. So ein Ausfall kann bei großen Systemen zu einem erheblichen Umsatz- oder Kundenverlust führen. Der Kunde kann sich nicht einloggen und Aufträge bleiben liegen und können nicht bearbeitet werden. Eine entsprechende Maßnahme wäre als Beispiel der Ausbau der Hardware-Komponenten. Das spart langfristig Geld, Nerven und schützt vor einem möglichen Systemausfall. 

Du interessierst dich für eine Performance Monitoring Tool? Dann klicke hier, um weitere Informationen zu Speedgain zu erhalten.

Fazit  - Was habe ich dabei gelernt? 

In dem Projekt habe ich gelernt, wie ich strukturiert die Planung eines Projekts beginne und umsetze. Dies lief in Verbindung mit dem Einstieg in zwei für mich neue Programmiersprachen, die ich von Grund auf neu gelernt hab. Hilfreich war jedoch, dass es Parallelen zwischen den beiden Programmiersprachen gibt. So musste ich bei Java nicht von vorne anfangen. 

Du interessierst dich für einen Job oder eine Ausbildung bei ITGAIN? Dann schau unbedingt auf unserem Karriereportal vorbei. Du kannst mich außerdem auf der Jobmesse Beruf und Bildung 2021 am 17. und 18. September in Hannover treffen und mir Fragen zur Ausbildung bei ITGAIN stellen. Ich freue mich auf dich! 

Neuen Kommentar schreiben

Ihre E-Mail Adresse wird nicht veröffentlicht.