Eine Fehlermeldung mit dem Thema der Optimierung der Kommunikation von Fehlern bei einer Chrome Extension für den Browser führe zu deutlich besseren Aufbereitungen der Entwickler von API`s, welche im letzten Absatz vergrößert mit der Aufforderung zum ausprobieren des Tools erneut.

Wie können API-Fehler schnell und effizient korrigiert werden?

Bei der Entwicklung von umfangreichen Application Processing Interfaces (APIs) treten immer wieder Fehler auf – wichtig ist es, diese schnell zu finden und effizient zu korrigieren. Chrome Extension hilft dabei.

Bei der Entwicklung von umfangreichen Application Processing Interfaces (APIs) treten immer wieder Fehler auf – wichtig ist es, diese schnell zu finden und effizient zu korrigieren.

Eine gute Beschreibung des aufgetretenen Fehlers ist dafür unerlässlich. Das Entwicklungsteam braucht zur zielgerichteten Lösung möglichst detaillierte Informationen. Ein typischer Fehlerbericht wie „Es tut nicht“ hilft dabei nicht weiter.

Standardisierte Fehleranalyse

Bei SPIRIT/21 haben wir deshalb ein Set an Fragen festgelegt, die bei einer Fehleranalyse immer beantwortet werden sollten:

  • Wie lautet die exakte URL, die aufgerufen wurde?
  • Welches HTTP-Verb wurde verwendet?
  • Wie lautet der Status-Code?
  • Welche Header wurden gesendet und empfangen?
  • Welche Daten wurden gesendet?
  • Welche Daten wurden empfangen?
  • Gibt es spezielle Fehler Codes, die gesetzt wurden?

Alle diese Informationen können im Browser ausgelesen werden. Google Chrome bietet zum Beispiel in den Entwickler-Tools einen Netzwerk-Reiter, in dem viele Details zu API-Aufrufen zu finden sind. Allerdings müssen diese jedes Mal passend kopiert und zusammengefasst werden. Dies bedeutet einerseits zusätzlichen Aufwand für den Entwickler, andererseits lässt oft auch die Formatierung zu wünschen übrig.
Als Entwickler versuche ich möglichst viel zu automatisieren und arbeite gerne mit Tools, um Aufwände zu minimieren. Also habe ich mir vorgenommen, das Erstellen eines Fehler-Reports zu automatisieren. Als Basis dafür dient wieder der Browser Google Chrome, der es zulässt die Developer Tools mit eigenen Erweiterungen auszustatten.

Fehlerberichte automatisieren mit Chrome Extension

Ein eigener Reiter ist schnell erstellt und mittels einer von Chrome bereitgestellten API können sämtliche Netzwerk-Anfragen mitgelesen werden. Diese werden grafisch aufbereitet und im neuen Reiter ausgegeben. Die Darstellung orientiert sich dabei am vorhandenen Netzwerk-Reiter und bietet ähnliche Funktionen wie zum Beispiel die Filterung nach Request-Arten und Fehlern.

Zusätzlich gibt es eine Kopier-Funktionalität, die die genannten Informationen in die Zwischenablage legt. Dabei wird darauf geachtet, dass diese strukturiert und gut lesbar wieder eingefügt werden können. Optimiert für interne Tools ist es ebenfalls möglich, die kopierten Informationen als strukturiertes HTML einzufügen, wodurch die Lesbarkeit nochmals erheblich verbessert wird. Mittlerweile ist es ebenfalls möglich, direkt eine E-Mail mit der entsprechenden Fehlerbeschreibung zu generieren, sodass nur noch der Empfänger eingetragen werden muss.

Der Aufwand einen gefundenen Fehler optimal zu kommunizieren, hat sich durch das Tool stark reduziert und die Entwickler der APIs bekommen die Informationen deutlich besser aufbereitet: eine Win-Win Situation für alle Beteiligten.

Wollen Sie das Tool selbst einmal ausprobieren? Es ist im Chrome Web Store unter dem Namen „Network Report Creator" verfügbar.

Stefan Sparmann, Softwareentwickler, SPIRIT/21

ssparmann@spirit21.com

Weitere Beiträge

Wir nutzen sogenannte Cookies, um Daten darüber zu bekommen, wie und mit welchen Endgeräten unsere Seiten besucht werden. Das hilft uns sehr dabei, die Seiten noch interessanter und bedienungsfreundlicher zu machen. Dabei berücksichtigen wir natürlich Ihre Präferenzen und schalten das SPIRIT/21-Analytics nur dann scharf, wenn Sie durch einen Klick auf „Cookies akzeptieren“ Ihr Einverständnis geben. Sie können Ihre Einwilligung jederzeit mit Wirkung für die Zukunft widerrufen. Weitere Informationen finden Sie unter Cookie Einstellungen und in unserer