Fehlo und GitHub.

Verbinde deine Projekte mit ihren Repositories. Dann springt der Stacktrace in den Code, jedes Release zeigt seine Commits, und ein Commit mit „Fixes“ erledigt den Fehler.

Was die Verbindung bringt

  • Code-Links im Stacktrace. Jeder Frame aus deinem Code verlinkt die Zeile auf GitHub, auf dem Commit des Releases, sonst auf dem Standard-Branch.
  • Commits pro Release. Fehlo holt die Commits zwischen zwei Releases über die Compare-API von GitHub. So siehst du bei einem neuen Fehler, was mit dem Release dazugekommen ist, und Fehlo zeigt verdächtige Commits.
  • Erledigen per Commit. Schreib Fixes SHOP-1A in eine Commit-Nachricht. Kommt der Commit auf den Standard-Branch, setzt Fehlo den Fehler auf erledigt.
  • GitHub-Issues aus Fehlern. Ein Klick legt ein Issue an, oder du verknüpfst ein bestehendes. Variablen, Request- und Nutzerdaten kommen nicht in den Text. Titel und Status folgen dem Issue auf GitHub.
  • Lockfiles für den Schwachstellen-Scan. Fehlo liest sie aus dem Repository, bei Pushes, die sie ändern, bei jedem Release mit Commit und einmal am Tag.

Einrichten

  1. Verbinden. In Fehlo unter Einstellungen, Integrationen „Mit GitHub verbinden“. Du installierst die Fehlo-App auf deiner GitHub-Organisation oder deinem Konto und wählst die Repositories, die Fehlo lesen darf. Das können Inhaber und Manager.
  2. Projekt zuordnen. Pro Projekt wählst du das Repository und den Standard-Branch.
  3. Pfade abgleichen. Pfade im Stacktrace sehen anders aus als im Repository, etwa /app/src/cart.py im Container. Gib an, welches Präfix Fehlo vorn abschneidet (/app/) und welches es ergänzt (backend/ in einem Monorepo). Mit „Pfad testen“ prüfst du einen Pfad aus einem echten Stacktrace.
  4. Commits melden. Damit Fehlo weiß, welcher Commit in welchem Release steckt, ruf im Build sentry-cli auf, oder nimm die Commit-SHA als Release-Version.
CI
export SENTRY_URL=https://app.fehlo.de/
export SENTRY_ORG=<organisation-slug>
export SENTRY_AUTH_TOKEN=<token>
VERSION=$(git rev-parse HEAD)

npx sentry-cli releases new "$VERSION"
npx sentry-cli releases set-commits --auto "$VERSION"
npx sentry-cli releases finalize "$VERSION"

Welche Rechte die App hat

Inhalte lesen (für Code-Links, Commits und Lockfiles), Issues schreiben (für GitHub-Issues aus Fehlern), Metadaten und Pull Requests lesen. Dazu die Ereignisse Push und Issues. Die App sieht nur die Repositories, die du bei der Installation freigibst. Fehlo speichert keinen Code, nur Commits, Lockfiles und Verknüpfungen.

Was es nicht gibt

  • GitLab und Bitbucket
  • Tickets in Jira oder Linear (in Arbeit); bis dahin kopierst du einen Fehler als Markdown
  • automatisches Zuweisen nach CODEOWNERS

Die GitHub-Integration ist in jedem Plan enthalten.

Häufige Fragen

Muss ich sentry-cli benutzen?

Für Code-Links nicht: Ohne Commit im Release verlinkt Fehlo auf den Standard-Branch. Für Commits pro Release und verdächtige Commits braucht Fehlo den Commit, über sentry-cli releases set-commits oder die Commit-SHA als Release-Version.

Welches Format hat die Kurz-ID?

Projektkürzel und eine Folge aus Ziffern und Buchstaben, etwa SHOP-1A. Du findest sie oben auf jeder Fehlerseite. Fehlo erkennt „Fixes SHOP-1A“ in Commit-Nachrichten auf dem Standard-Branch.

Geht das mit privaten Repositories?

Ja. Die Fehlo-App liest die Repositories, die du ihr bei der Installation freigibst, auch private.

Funktioniert das mit GitLab?

Noch nicht. Heute ist nur GitHub angebunden.