Bug Tracking mit Sentry

Bug Tracking ist bei der Entwicklung von webbasierten Applikationen ein wichtiges Thema. Der Einsatz eines Exception- oder Bug Trackers wie Sentry bietet eine Reihe von Vorteilen bei der Überwachung von Fehlermeldungen einer Anwendung.

Sentry Bug TrackerNatürlich sollten die meisten Bugs einer Software schon während der Entwicklung bzw. dem Testen der Applikation auffallen und behoben werden. Ein kleiner Teil an Fehlern bleibt dennoch übrig. Das ist ganz normal und betrifft generell jede Software, egal ob von kleinen freiberuflichen Entwicklern oder von großen Softwareherstellern.

Man kann sich allerdings nicht darauf verlassen, dass die Benutzer einer Software Fehler auch deren Entwicklern melden. Viele denken sich, dass der Fehler sicher schon von jemand anderem gemeldet wurde. Durch Bugs steigt gleichermaßen die Frustrate der Benutzer, wie die Akzeptanz der Software sinkt. An diesem Punkt kommen die Vorteile von webbasierten Applikationen ins Spiel: Diese sind dauerhaft mit dem Hersteller verbunden und bieten eine einfache Möglichkeit Updates auszuliefern, da keine Dateien an die Benutzer verteilt werden müssen.

Exceptions und wie diese zum Bug werden

Die dauerhafte Verbindung mit dem Hersteller bietet die Möglichkeit, Fehler automatisch an den Entwickler zu melden, ohne dass der User dazu aktiv werden muss. Dies funktioniert natürlich nur bei Programmierfehlern und nicht bei konzeptionellen Fehlern, da die Software ja selbstständig erkennen muss, dass ein Fehler aufgetreten ist. Dies ist zum Beispiel der Fall, wenn in einer Berechnung durch Null geteilt werden soll oder wenn bei einer Eingabe benötigte Daten fehlen. In solchen Fällen werden in Programmen sogenannte „Exceptions“ oder auf deutsch „Ausnahmen“ ausgelöst (bekannt vom „Schweren Ausnahmefehler“).

Exceptions sind generell zunächst nichts Schlimmes und kommen in jedem Programmcode vor. Die Frage ist, wie die Software mit aufgetretenen Exceptions umgeht. So kann zum Beispiel eine Exception ausgelöst werden, wenn in einem Formular ein Pflichtfeld nicht ausgefüllt wurde. Normalerweise würde die Software eine Exception abfangen und angemessen mit ihr umgehen: Zum Beispiel eine Fehlermeldung ausgeben, die auf das nicht ausgefüllte Pflichtfeld hinweist. Wirkliche Fehler treten erst auf, wenn Exceptions nicht abgefangen und behandelt werden.

Nicht abgefangene Exceptions an Entwickler weiterleiten

Um auf Fehler bzw. Bugs zu reagieren, bieten Programmiersprachen die Möglichkeit, eine Funktion zu definieren, die im Falle einer nicht abgefangenen Exception aufgerufen wird. Hier kann der Programmierer definieren, wie auf einen bestimmten Fehler reagiert werden soll . Eine sinnvolle Behandlung von Ausnahmefehlern ist zum Beispiel das Weiterleiten an den entsprechenden Entwickler.
Problematisch wird es, wenn einzelne Fehler gehäuft auftreten und der Entwickler dadurch sehr viele Mails erhält. Dabei können Benachrichtigungen zu anderen Fehlern dann in den Mails untergehen.
An dieser Stelle kommt ein Bug Tracker wie „Sentry“ ins Spiel, der u.a. von Disqus, Pinterest, Rdio und Path eingesetzt wird.

Mit Bug Tracker Sentry arbeiten

Um Sentry nutzen zu können, muss die Software zunächst auf einem Server installiert werden und über Port 80 erreichbar sein. Zur Administration steht den Entwicklern eine komfortable Weboberfläche zur Verfügung. Außerdem werden die Fehler aus den Applikationen über einen HTTP-Request auf diesem Port gemeldet. Dazu bietet Sentry für diverse Programmiersprachen Exception-Handler an, die dafür sorgen, dass Fehler nicht mehr direkt an den Entwickler, sondern an das eigene Sentry-System gemeldet werden. Der Vorteil hierbei ist, dass gleiche Fehler zusammengefasst werden und der Entwickler nur beim ersten Vorkommen eines Fehlers benachrichtigt wird. In der Weboberfläche von Sentry bekommt man dann eine Übersicht über die bisher aufgetretenen Fehler und wie oft diese bereits vorkamen. So behält der Entwickler den Überblick und kann sich schneller um die aufgetretenen Fehler kümmern.

In der Detailansicht eines Fehlers stellt Sentry alle gesammelten Informationen strukturiert dar:

  • die eigentliche Fehlermeldung,
  • der Zeitpunkt, wann der Fehler aufgetreten ist,
  • die Anzahl der Vorkommen,
  • der Server-Name,
  • Daten zu der Anfrage am Server (URL, Cookies etc.)
  • sowie ein Stacktrace bzw. eine Auflistung der Funktionsaufrufe, die zu dem Fehler geführt haben.

Mit diesen Informationen kann der Entwickler dann komfortabel auf Bugsuche gehen und den Fehler zeitnah beheben.

Einsatz von Sentry bietet ADACOR auschließlich Vorteile

Der Weg hin zu einem Exception- und Bug Tracker wie Sentry stand bei der ADACOR am Ende eines langen Prozesses. Zunächst hatten wir keinerlei Bug-Reporting im Einsatz, darauf folgte dann die Erfassung von Fehlern per E-Mail an unser OTRS-Ticketing-System und abschließend die Nutzung des Bug Trackers von Sentry.
Mittlerweile setzen wir Senty standardmäßig in der Softwareentwicklung ein, damit Fehler möglichst schnell und effektiv nach ihrem Auftreten behoben werden.

, , ,


Weitere Artikel zum Thema lesen

Indirektes Remote-Monitoring von Servern

Cloud, Hosting, IT-News

Indirektes Remote-Monitoring von Servern

Unsere Kunden haben oftmals komplexe Anforderungen an Sicherheit und Datenschutz unserer Server. Daher kann es vorkommen, dass wir Systeme oder Verbindungen kontrollieren müssen, die...

weiter lesen

Was ist CoroSync?

Hosting, IT-News

Was ist CoroSync?

Die CoroSync Cluster Engine ist das Herzstück innerhalb eines Linux High-Availability-Clusters (Linux-HA), welche in Verbindung mit weiteren Komponenten für die Überwachung aller angeschlossenen Knoten...

weiter lesen

Online-Migration eines standalone ESXi Hosts

IT-News

Online-Migration eines standalone ESXi Hosts

Die Online-Migration eines standalone ESXi Hosts mit verteiltem virtuellem Switch aus einem vCenter Version 4 in ein vCenter Version 5 ist notwendig geworden. Denn...

weiter lesen


Neueste Nachrichten von ADACOR

IT-News

Neue Ideen für Teamevents

Teamevents helfen, das Wir-Gefühl zu stärken, die Arbeitsmoral zu erhöhen und Mitarbeiter langfristig an das Unternehmen zu binden.

weiter lesen

Cloud

Hybrid Cloud in vielen Unternehmen bereits Realität

Einsatzmöglichkeiten der Hybrid Cloud und wieso sie die jeweiligen Nachteile von Private und Public Cloud minimiert.

weiter lesen

IT Security

Hintergründe und aktuelle Informationen zur WannaCry-Attacke

Zum Heulen - wie die bislang größte Malware-Attacke ihren Ausgang nahm und welche Gegenmaßnahmen möglich sind.

weiter lesen

Diese Seite verwendet Cookies, welche uns helfen, unsere Services anzubieten und zu verbessern.
Erfahren Sie mehr über unsere Cookie-Richtlinien. Durch die Nutzung dieser Website erklären Sie sich mit der Nutzung von Cookies einverstanden.