• Digitale Lösungen

Datum

04. Jun 2025

Produktionsfehler in Echtzeit beheben: Unser leichtgewichtiges Monitoring-Setup

Nicht jeder Bug lässt sich vorab testen – manche zünden erst in der Produktion. Um genau da schnell zu reagieren, haben wir ein schlankes Monitoring-Setup gebaut, das in Slack Alarm schlägt, sobald es irgendwo brennt. Direkt, automatisiert, wiederverwendbar – und ganz ohne Tool-Zirkus. Wie das konkret aussieht? Zeigen wir dir hier am Beispiel aus der Praxis.

Als Team setzen wir stark auf Continuous Delivery und automatisierte Tests, um Fehler frühzeitig zu erkennen – idealerweise bereits im Entwicklungs- oder Build-Prozess. Unser Ziel ist es, Probleme zu finden, bevor sie überhaupt in die Produktion gelangen.

Doch in der Realität lassen sich nicht alle Fehler durch Tests abdecken. Manche treten nur unter bestimmten Bedingungen auf, in Kombination mit echten Daten oder im Zusammenspiel mit externen Systemen. Der Aufwand, solche Szenarien im Voraus zu testen, kann unverhältnismässig hoch sein.

Deshalb ergänzen wir unsere Qualitätssicherung um ein leichtgewichtiges, aber wirkungsvolles Monitoring, das uns in Echtzeit über Unregelmässigkeiten informiert – direkt in Slack, unserem täglichen Kommunikationskanal.

Die Lösung für unser Backend

Unsere Backend-Services laufen auf AWS Fargate. Um deren Zustand im Blick zu behalten, haben wir ein eigenes CDK-Konstrukt entwickelt, das sich einfach in unsere Infrastruktur integrieren lässt.

Es erstellt automatisch CloudWatch-Alarme, die auf kritische Metriken achten:

  • CPU- und Speicherauslastung werden kontinuierlich überwacht, damit Performanceprobleme nicht unbemerkt bleiben.

  • Wenn ein Container unerwartet gestoppt wird, erhalten wir sofort eine Benachrichtigung.

  • Wir lassen auch CloudWatch-Logs auf Fehler durchsuchen – und bei Auffälligkeiten werden wir benachrichtigt.

Alle Alarme führen zu einem zentralen SNS Topic, das eine kleine Lambda-Funktion auslöst. Diese Funktion sendet eine Nachricht direkt in unseren Slack-Channel – einfach, zuverlässig und ohne externe Tools.

Monitoring mit AWS und Slack

Da das Monitoring als AWS CDK-Konstrukt umgesetzt ist, muss es nur einmal entwickelt werden und kann in beliebigen Projekten wiederverwendet werden. Das spart Zeit, vermeidet Redundanzen und passt perfekt zu unserem Infrastructure-as-Code-Ansatz.

Frontend-Fehler im Blick mit Sentry

Im Frontend ist die Situation etwas anders. Fehler passieren direkt im Browser der Nutzer:innen – und diese lassen sich schwer zentral erfassen.

Deshalb setzen wir hier auf Sentry. Damit erkennen wir Fehler unmittelbar dort, wo sie auftreten – direkt im Browser der Nutzer:innen. Dank der Sentry-App für Slack erhalten wir automatisch eine Benachrichtigung, sobald ein Fehler gemeldet wird. In vielen Fällen wissen wir dadurch bereits Bescheid, bevor uns jemand aktiv darauf hinweist.

Damit die Benachrichtigungen auch wirklich hilfreich sind, verwenden wir gezielte Alert-Rules, die nur bei relevanten Ereignissen auslösen. So vermeiden wir unnötige Slack-Benachrichtigungen – beispielsweise bei HTTP-Fehlern wie 404 oder 403, die im Alltag keine echte Störung darstellen.

Ein Beispiel aus der Praxis

Wie effektiv unser Monitoring ist, zeigt ein konkreter Vorfall:

  • 13:42 Uhr: Ein Alarm wird in unserem Slack-Channel ausgelöst – Ein Fehler wurde in den CloudWatch Logs erkannt. Direkt im Anschluss beginnt die Analyse.  

  • 14:01 Uhr: Der Pull-Request mit dem Fix ist bereit zur Review.  

  • 14:19 Uhr: Das Deployment in Produktion ist abgeschlossen – der Fehler ist behoben.

Deployment mit dem Fix erfolgt in der produktiven Umgebung

Durch diese schnelle Reaktionskette – vom Alarm bis zum Rollout – konnten wir das Problem innerhalb von 37 Minuten beheben, ohne auf Meldungen unserer Nutzer:innen angewiesen zu sein.

In diesem Fall konnte der Fehler sehr schnell analysiert und direkt behoben werden. Das ist jedoch nicht immer nötig oder möglich. Je nach Art des Alarms kann die Analyse auch zu einem Jira-Ticket führen, das später bearbeitet wird – oder es handelt sich um einen harmlosen Einzelfall, der im Slack-Thread einfach als Fehlalarm kommentiert wird.

Dank der Thread-Funktionalität in Slack können Alarme direkt dort dokumentiert, kommentiert und klassifiziert werden – ganz ohne zusätzliche Tools. In diesem Beispiel wurde z. B. der Pull-Request-Link im Thread ergänzt. In anderen Fällen könnte das ein Verweis auf einen Jira-Issue oder ein kurzer Kommentar zur Einordnung sein.

Fazit

Mit diesem Setup haben wir ein Monitoring, das unkompliziert zu betreiben, aber dennoch aussagekräftig und schnell ist. Es ergänzt unsere bestehenden Test- und CI/CD-Prozesse ideal – und verschafft uns frühzeitig Einblick in potenzielle Probleme, ohne aufwendige Testabdeckung für jedes Szenario.

Quentin Chiquet - avega IT AG

Quentin 'Q' Chiquet

Fullstack Developer

Tech Trouble? Lass uns darüber reden!

Fehler in der Produktion, Monitoring-Fragen oder CI/CD-Knackpunkte? In unserem kostenlosen Speedcoaching bekommst du konkrete Tipps, wie du mit leichtem Setup schneller reagierst – und entspannter deployst.