Fehlo and GitHub.

Link your projects to their repositories. Stack traces then jump into the code, every release shows its commits, and a commit with "Fixes" resolves the issue.

What the connection gives you

  • Code links in stack traces. Every frame from your code links the line on GitHub, at the release's commit, otherwise on the default branch.
  • Commits per release. Fehlo fetches the commits between two releases through GitHub's compare API. A new issue shows what came with the release, and Fehlo points out suspect commits.
  • Resolve by commit. Write Fixes SHOP-1A in a commit message. When the commit lands on the default branch, Fehlo resolves the issue.
  • GitHub issues from errors. One click creates an issue, or you link an existing one. Variables, request and user data stay out of the text. Title and state follow the issue on GitHub.
  • Lockfiles for vulnerability scanning. Fehlo reads them from the repository on pushes that change them, on every release with a commit, and once a day.

Setup

  1. Connect. In Fehlo, Settings, Integrations, "Connect GitHub". You install the Fehlo app on your GitHub organisation or account and pick the repositories Fehlo may read. Owners and managers can do this.
  2. Link projects. For each project, pick the repository and the default branch.
  3. Map paths. Paths in stack traces differ from paths in the repository, such as /app/src/cart.py in a container. Set the prefix Fehlo strips (/app/) and the one it adds (backend/ in a monorepo). "Test path" checks a path from a real stack trace.
  4. Report commits. To tell Fehlo which commit is in which release, call sentry-cli in your build, or use the commit SHA as the 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"

App permissions

Read contents (for code links, commits and lockfiles), write issues (for GitHub issues from errors), read metadata and pull requests, plus the Push and Issues events. The app only sees the repositories you grant at installation. Fehlo stores no code, only commits, lockfiles and links.

What's missing

  • GitLab and Bitbucket
  • tickets in Jira or Linear (in progress); until then, copy an issue as Markdown
  • automatic assignment from CODEOWNERS

The GitHub integration is included in every plan.

Questions

Do I have to use sentry-cli?

Not for code links: without a commit on the release, Fehlo links to the default branch. For commits per release and suspect commits Fehlo needs the commit, from sentry-cli releases set-commits or the commit SHA as the release version.

What does the short ID look like?

The project's short name and a sequence of digits and letters, such as SHOP-1A. It's at the top of every issue page. Fehlo picks up "Fixes SHOP-1A" in commit messages on the default branch.

Does it work with private repositories?

Yes. The Fehlo app reads the repositories you grant it at installation, private ones included.

Does it work with GitLab?

Not yet. Only GitHub is connected today.