RailWatch: ein Dashboard für alle Railway-Dienste
RailWatch ist ein eigenes Projekt, kein Kundenauftrag. Ein Django-Dashboard, das über die Railway-API alle Projekte und Dienste eines Kontos zeigt, den Zustand der letzten Deployments anzeigt und prüft, ob die Webadressen wirklich antworten. Ein eigenes Werkzeug mit Anmeldung, nicht öffentlich nutzbar.
RailWatch selbst ist nicht öffentlich. Wer etwas Ähnliches braucht, schreibt mir; das Gespräch kostet nichts.
Bewegte Skizze des Dashboards: Vier Beispieldienste melden sich, ihre Antwortzeiten laufen ein, einer fällt aus und wird rot, die Logs zeigen die Ursache, ein Klick deployt neu, alles ist wieder grün.
- Web-Dashboard mit Anmeldung
- Deployments und Erreichbarkeit aller Railway-Dienste
- Django, SQLite, APScheduler, Railway-API
- Im eigenen Einsatz, nicht öffentlich
So funktioniert es
Die Szene oben spielt genau diese Schritte nacheinander ab.
Dienste melden sich
Die Railway-API liefert Projekte, Dienste und das letzte Deployment, der Monitor ruft die Webadressen auf.
Daten landen im Dashboard
Antwortzeit, Statuscode und Deployment-Zustand werden gespeichert und laufend neu geladen.
Kacheln zeigen den Zustand
Grün heißt in Ordnung, Rot heißt Fehler oder nicht erreichbar.
Ausfall wird sichtbar
Antwortet eine Seite nicht oder schlägt ein Deployment fehl, steht das sofort oben.
Ursache nachlesen
Die Fehler-Ansicht sammelt die Logs und lässt sich nach Schweregrad filtern.
Neu starten
Ein Klick löst ein neues Deployment des Dienstes aus.
Warum ein eigenes Dashboard
Wer mehrere Seiten und Dienste bei Railway betreibt, schaut sonst in jedem Projekt einzeln nach: Ist das letzte Deployment durchgelaufen, steht im Log ein Fehler, antwortet die Seite überhaupt? Ich betreibe selbst mehrere Dienste dort und wollte eine einzige Übersicht statt vieler Tabs.
Was gebaut wurde
Von Grund auf selbst gebaut, mit Django, SQLite, Railway-API.
Ein Django-Projekt mit zwei Bereichen hinter einer Anmeldung.
Der erste liest über die GraphQL-Schnittstelle von Railway Projekte, Dienste, Domains und das jeweils letzte Deployment aus.
Der zweite ist ein eigener Erreichbarkeits-Monitor: Ein Hintergrundprozess ruft jede eingetragene Adresse im Minutentakt auf und speichert Antwortzeit und Statuscode.
Beides läuft in einem einzigen Dienst, ohne zusätzlichen Datenbank-Server.
Was RailWatch kann
- Alle Projekte und Dienste mit dem Zustand ihres Deployments auf einer Seite zeigen, die sich im Minutentakt neu lädt.
- Die Deployment-Logs gesammelt zeigen, nach Schweregrad filterbar.
- Den Deployment-Verlauf des letzten Monats und die Verteilung der Zustände als Diagramm zeigen.
- Einen Dienst direkt aus dem Dashboard neu deployen.
- Webadressen überwachen: Antwortzeit-Verlauf und Erreichbarkeit des letzten Tages in Prozent.
- Fehler der Railway-API als verständlichen Text anzeigen, auch auf dem Handy.
Technik und Stand
Stand 18. Oktober 2026.
- Anwendung
- Python, Django 5.2, Gunicorn, WhiteNoise
- Daten
- SQLite, APScheduler für den Hintergrundprozess
- Schnittstelle
- Railway-GraphQL-API über requests
- Betrieb
- Docker, Deployment auf Railway, Einstellungen über Umgebungsvariablen
Ein eigenes Werkzeug im Einsatz bei mir, entwickelt im Mai 2026. Nicht öffentlich nutzbar und ohne Demo. Automatische Tests gibt es noch keine, ebenso keine Benachrichtigung per E-Mail oder Messenger.
Häufig gefragt
Was ist RailWatch?
Ein Django-Dashboard, das Railway-Projekte und -Dienste in einer Übersicht zeigt, den Zustand der Deployments anzeigt und die Erreichbarkeit der Webadressen prüft.
Wie oft wird geprüft?
Der Monitor ruft jede eingetragene Adresse im Minutentakt auf, die Übersicht lädt sich ebenso oft neu. Die Prüfdaten bleiben einen Tag lang gespeichert.
Kann man Dienste damit auch steuern?
Ja, ein Dienst lässt sich aus dem Dashboard neu deployen. Weitere Eingriffe wie das Ändern von Variablen sind nicht enthalten.
Ist RailWatch öffentlich nutzbar?
Nein. Es ist ein eigenes Werkzeug mit Anmeldung.
Was das für Ihr Vorhaben heißt
Ein internes Werkzeug muss nicht schön, aber verlässlich sein. Für Ihren Betrieb baue ich Übersichten, die zeigen, was gerade läuft und was nicht.
Für Betriebe baue ich Websites mit derselben Sorgfalt: Kundenprojekte mit Fallstudie · Leistungen · Kontakt. Für Unternehmen: Webanwendungen mit Django.
Alle eigenen ProjekteEin Gespräch, danach ein fester Preis.
Rufen Sie an oder schreiben Sie mir. Ich melde mich innerhalb von 24 Stunden an Werktagen, und nach dem Gespräch haben Sie das Angebot binnen 24 Stunden schriftlich. Daraus folgt nichts, solange Sie nicht zusagen.
- Das Angebot kostet nichts und verpflichtet zu nichts.
- Kein Newsletter. Ihre Adresse bekommt sonst niemand.
- Sie sprechen mit mir, nicht mit einem Vertrieb.