Artikel

CloudZentrale: ein Panel, das nur ich benutze

Zu viele Systeme, kein Überblick. Ein eigenes Verwaltungspanel, das alles zusammenzieht — und die Frage, ab wann so etwas mehr Arbeit macht, als es spart.

BlackZackBlackzack

932 Wörter · 5 Min. Lesezeit

  • panel
  • projektstart
  • werkzeuge

Am Ende des Vorjahres hatte ich mir vorgenommen, einen Ort zu haben, an dem ich sehe, was läuft. Das ist dieser Ort geworden: ein eigenes Verwaltungspanel, das ich CloudZentrale nenne, und das genau einen Nutzer hat.

Der Anlass

Der Zustand vorher war nicht dramatisch, aber verstreut:

  • Der Zustand des Bots stand in der Verwaltungsschnittstelle, als JSON.
  • Serverzustände sah ich über SSH.
  • Ob Sicherungen gelaufen waren, stand in Protokolldateien.
  • Lizenzen verwaltete ich über direkte Aufrufe der Schnittstelle.
  • Für Webdienste gab es jeweils eigene Oberflächen.

Nichts davon war unlösbar. Alles davon bedeutete, dass eine einfache Frage — läuft alles? — mich vier Werkzeuge und mehrere Minuten gekostet hat.

Was es kann

Bewusst nur Dinge, die ich regelmäßig brauche:

Übersicht. Alle Dienste mit Zustand, Laufzeit und letztem Lebenszeichen. Sicherungen mit Datum und Größe. Speicherplatz mit Hochrechnung.

Steuerung. Neustart eines Dienstes, mit Rückfrage. Nichts, was Daten verändert.

Lizenzen. Anträge sehen, genehmigen, ablehnen; Schlüssel sperren, entsperren, Gerätebindung zurücksetzen. Der Bereich, den ich am häufigsten benutze.

Guilds und Tickets. Lesend, um Anfragen einordnen zu können.

Protokolle. Die letzten Meldungen aus allen Systemen an einer Stelle, filterbar nach Grad und Bereich.

Und, wichtiger: was es nicht kann. Keine Bearbeitung von Nutzerdaten, kein Löschen, keine Massenaktionen. Alles, was tiefer eingreift, mache ich bewusst über die Schnittstelle direkt — mit dem zusätzlichen Aufwand als eingebauter Bedenkzeit.

Die Entscheidung, die den Aufbau bestimmt hat

Das Panel spricht ausschließlich über die vorhandenen Schnittstellen mit meinen Systemen. Es hat keinen direkten Datenbankzugriff.

Das ist umständlicher — für manche Ansichten muss ich erst einen Endpunkt bauen. Es hat zwei Gründe, die mir wichtiger waren:

Es gibt keinen zweiten Weg an den Daten vorbei. Alle Regeln, Prüfungen und Protokolle liegen in der Schnittstelle. Ein Panel mit eigenem Datenbankzugriff könnte an all dem vorbeischreiben — und dann steht im Protokoll nichts.

Was das Panel kann, kann auch etwas anderes. Die App auf dem Handy benutzt dieselben Endpunkte. Hätte ich am Panel angefangen zu schreiben, wären das zwei Wege für dieselbe Sache.

Infobox

Diese Regel hat sich als der wertvollste Teil des Projekts erwiesen. Jedes Mal, wenn ich für eine neue Ansicht einen Endpunkt bauen musste, habe ich mich kurz geärgert — und jedes Mal war der Endpunkt danach auch von woanders nutzbar. Nach einem Jahr gibt es keine Funktion, die nur über das Panel geht.

Was mich beim Bauen überrascht hat

Wie viel Arbeit Zustandsanzeigen sind. „Läuft" ist kein Wert, sondern eine Ableitung aus einem Zeitstempel, einem Zustandsfeld und einer Schwelle. Und jede Anzeige braucht drei Fälle: gesund, gestört, unbekannt. Der dritte wird gerne vergessen — dabei ist er der häufigste, wenn eine Abfrage selbst fehlschlägt.

Wie wichtig Rückmeldung ist. Ich hatte Knöpfe, die eine Aktion auslösen und danach nichts anzeigen. Man klickt, es passiert scheinbar nichts, man klickt noch mal. Jeder Knopf hat jetzt drei Zustände: bereit, läuft, Ergebnis — und das Ergebnis bleibt stehen, bis man es wegklickt.

Wie schnell so etwas wächst. Es fing mit einer Übersichtsseite an. Nach zwei Monaten waren es sieben Bereiche. Jeder einzelne war berechtigt, und zusammen sind sie ein System, das gepflegt werden will.

Die Ansichten, die ich am häufigsten benutze

Nach den ersten Wochen hat sich gezeigt, welche Bereiche tatsächlich benutzt werden — und es sind nicht die, an denen ich am längsten gebaut habe.

Die Startseite mit allen Diensten. Mehrmals täglich, meistens als erste Handlung. Sie beantwortet eine Frage und braucht dafür drei Sekunden.

Die Lizenzanträge. Der einzige Bereich, in dem ich tatsächlich etwas verändere.

Die Protokollansicht über alle Systeme. Immer dann, wenn etwas nicht stimmt — und dann ist sie unbezahlbar, weil ich nicht mehr überlegen muss, in welchem Protokoll ich suche.

Kaum benutzt: die Detailansichten mit Kennzahlen und Verläufen. Sie sehen gut aus und beantworten Fragen, die ich selten habe.

Das ist dasselbe Muster wie bei den Bot-Befehlen Jahre vorher: Der Aufwand verteilt sich anders als die Nutzung, und ohne Messung merkt man es nicht.

Was ich mir für die Weiterentwicklung vorgenommen habe

Aus dieser Beobachtung ist eine Regel für dieses Panel geworden: Neue Ansichten nur, wenn ich die Frage benennen kann, die sie beantworten.

Nicht „eine Übersicht über die Datenbanken", sondern „wie groß ist die Datenbank, und wann war die letzte Sicherung". Nicht „Statistiken zum Bot", sondern „läuft er, seit wann, und gab es Fehler".

Der Unterschied klingt formal und filtert erstaunlich viel weg. Bei mindestens drei geplanten Bereichen ist mir beim Formulieren aufgefallen, dass ich die Frage gar nicht habe — ich hatte nur das Gefühl, dass ein ordentliches Panel so etwas enthalten sollte.

Und das ist die eigentliche Gefahr bei einem Werkzeug für sich selbst: Man baut das, was nach einem vollständigen Werkzeug aussieht, statt das, was man braucht. Der Maßstab ist dann ein Vorbild und nicht die eigene Arbeit.

Die ehrliche Frage: Lohnt sich das?

Ein Verwaltungspanel für eine Person ist eine seltsame Sache. Es spart Zeit und kostet Zeit, und der Saldo ist nicht offensichtlich.

Was dafür spricht: Die Frage „läuft alles?" dauert jetzt zehn Sekunden statt fünf Minuten. Bei mehrmals täglich ist das über ein Jahr eine erhebliche Menge. Und Lizenzanträge zu bearbeiten war vorher ein Vorgang mit Kommandozeile, jetzt sind es zwei Klicks.

Was dagegen spricht: Es ist ein weiteres System mit Abhängigkeiten, Updates und Sicherheitsfragen. Und es hat den unangenehmen Effekt, dass ich Dinge baue, weil sie im Panel gut aussähen.

Mein Fazit nach den ersten Wochen: Es lohnt sich, solange es Ansichten liefert und keine Logik enthält. In dem Moment, in dem im Panel Regeln stehen, die es sonst nirgends gibt, ist es kein Werkzeug mehr, sondern ein zusätzliches System mit eigener Wahrheit.