© Liashko/Shutterstock.com
Nachvollziehbarkeit mithilfe von Metriken

Transparente Software


In Zeiten von Abhörskandalen und Vorratsdatenspeicherung ist der transparente Umgang mit Daten zumindest im politischen Umfeld eher negativ belegt. Aber was bedeutet Transparenz im Zusammenhang mit der Entwicklung und dem Betrieb einer Serveranwendung? Welche Informationen eine Serveranwendung zur Verfügung stellen sollte und warum, erläutert dieser Artikel.

Viele kennen dieses flaue Gefühl im Magen, wenn man eine neue, über mehrere Monate oder gar Jahre vom eigenen Projektteam entwickelte Software in Betrieb nimmt. Die Anwendung wurde gerade auf dem Produktivsystem eingespielt und wir wissen nicht wirklich, ob sie den Ansturm der Benutzer verkraftet. Eigentlich wissen wir überhaupt nichts über den aktuellen Zustand der Anwendung. Wie es der Zufall (oder der Kunde) will, ist ein solcher Termin oft ein Freitag, sodass man das ganze Wochenende mit diesem Gefühl leben muss, um am Montagmorgen endlich von den Betriebskollegen über den Zustand der Anwendung informiert zu werden.

Ein Mittel, um in solchen Situationen etwas beruhigter sein zu können, ist Transparenz. Eine transparente Anwendung gibt Informationen über ihren Zustand preis, sodass man sich stets ein Bild über die Lage machen kann. Im Sinne von DevOps hört diese Transparenz idealerweise auch nicht beim Betriebspersonal auf, sondern reicht bis zum Entwicklerteam (wenn es denn überhaupt unterschiedliche Personen sind). Auf Basis der von der Anwendung preisgegebenen Informationen kann dann jederzeit entschieden werden, ob es der Anwendung gut geht, oder ob und welche Maßnahmen ergriffen werden müssen. Im Folgenden wird erläutert, welche Metriken eine Anwendung sinnvollerweise messen und preisgeben sollte und mit welchen Mitteln sich eine solche Transparenz ausgestalten lässt.

Was messen?

Die Metriken, die von einer Anwendung bzw. dem darunterliegenden Anwendungsserver zur Verfügung gestellt werden sollten, lassen sich grob in technische und fachliche Metriken unterteilen. Technische Metriken beschreiben hauptsächlich den aktuellen Zustand der zur Verfügung stehenden Ressourcen, zum Beispiel

  • die Auslastung der Prozessorkerne

  • den verfügbaren und belegten Hauptspeicher

  • den verfügbaren und belegten Festplattenspeicher

  • die verfügbaren Connections in einem Connection-Pool

  • die Verfügbarkeit von Systemkomponenten

Eine hohe Besucherzahl wird sich zum Beispiel als erhöhter Ressourcenbedarf in diesen Metriken bemerkbar machen. Man kann anhand dieser Metriken also erkennen, ob ein Server ausgelastet ist oder n...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang