GitHub

You can use the data from your GitHub commits to help find and fix bugs faster.

Configure GitHub

GitHub (github.com)

  1. In Sentry, navigate to Organization Settings > Integrations.

  2. If you have the legacy GitHub integration installed, you’ll see a button next to GitHub that says Upgrade. If you do not have the legacy GitHub integration installed, you'll see a button that says Install.

    github global install

  3. In the resulting modal, click Add Installation.

    github global add installation

  4. A GitHub install window should pop up. Click Install.

  5. Select which repositories Sentry should have access to (or select all repositories).

  6. You should then be redirected back to the Sentry Integrations page.

  7. On your new GitHub instance in Sentry, click Configure.

  8. Add any repositories from which you want to collect commit data. Make sure you have given Sentry access to these repositories in GitHub in the previous steps.

    github global add repo

The GitHub integration is available for all projects under your Sentry organization. You can connect multiple GitHub organizations to one Sentry organization, but you cannot connect a single GitHub organization to multiple Sentry organizations.

GitHub Enterprise

Add new GitHub App

  1. Confirm Sentry's IP ranges are allowed for your GitHub Enterprise instance.

  2. In your GitHub Enterprise organization, navigate to Settings > Developer Settings > GitHub Apps and click to add a new New GitHub App.

    github e new app

Register new GitHub App

  1. First, you'll need to generate a webhook secret. For example, in terminal:

    Copied
    openssl rand -base64 500 | tr -dc 'a-zA-Z0-9' | fold -w 64 | head -n 1
  2. Then in GitHub, fill out the form as follows and click Create GitHub App.

    GitHub App Name sentry-app
    Homepage URL https://sentry.io
    User authorization callback URL https://sentry.io/extensions/github-enterprise/setup/
    Setup URL https://sentry.io/extensions/github-enterprise/setup/
    Webhook URL https://sentry.io/extensions/github-enterprise/webhook/
    Webhook secret `Input your secret from the previous step`
    Repository Administration Read-only
    Commit Statuses No Access
    Deployments No Access
    Issues Read & Write
    Pages No Access
    Pull Requests Read-only
    Repository Contents Read-only
    Single File No Access
    Repository Projects No Access
    Organization members Read-only
    Organization projects No Access

    Subscribe to Events

    Pull Request Yes
    Push Yes

Install your GitHub App

  1. In Sentry, navigate to Organization Settings > Integrations.

  2. Next to GitHub Enterprise, click Install.

    github e install

  3. Click Add Installation.

    github e add installation

  4. Fill out the following form with information from your GitHub apps configuration page.

    github e form

    You'll need to generate a private key on your GitHub apps configuration page, and paste the entire contents into the GitHub App Private Key field.

    github e generate private key

    For example, in terminal:

    Copied
    cat <YOUR_PRIVATE_KEY_FILE> | pbcopy
  5. Click Configure and then a GitHub install window will pop up. Select which repositories Sentry should have access to (or select all repositories) and click Install.

    github e repo access

  6. You will then be redirected back to Sentry. On your new GitHub Enterprise instance, click Configure.

    github e configure

  7. Add any repositories that you want to collect commit data from. Make sure you have given Sentry access to these repositories in GitHub in the previous steps.

    github e add repo

GitHub Enterprise should now be enabled for all projects under your Sentry organization.

Commit Tracking

Commit tracking allows you to hone in on problematic commits. Learn more about commit tracking.

Suspect Commits and Suggested Assignees

Once you set up commit tracking, you’ll be able to see the most recent changes to files found in the issue’s stack trace with suspect commits.

For issues where the files in the stack trace match files included in commits sent to Sentry, you’ll see the suspect commit, with a link to the commit itself.

github global suspect commits

You’ll also see that the author of the suspect commit will be listed as a suggested assignee for this issue. To assign the issue to the suggested assignee, click on their icon.

Issue Management

Issue tracking allows you to create GitHub issues from within Sentry, and link Sentry issues to existing GitHub Issues.

Once you’ve navigated to a specific issue, you’ll find the Linked Issues section on the right hand panel. Here, you’ll be able to create or link GitHub issues.

github global link issue

Resolving in Commit/Pull Request

Once you are sending commit data, you can start resolving issues by including fixes <SENTRY-SHORT-ID> in your commit messages. For example, a commit message might look like:

Copied
Prevent empty queries on users

Fixes MYAPP-317

You can also resolve issues with pull requests by including fixes <SENTRY-SHORT-ID> in the title or description.

When Sentry sees this, we’ll automatically annotate the matching issue with a reference to the commit or pull request, and, later, when that commit or pull request is part of a release, we’ll mark the issue as resolved.

GitHub SSO

Enable Single Sign-on

You can edit this page on GitHub.