Get a Jump On Errors with Sentry and Atlassian
Recently, Atlassian announced 12 new features to help improve collaboration across software teams. These new capabilities and some help from Sentry & friends aim to help developers spend more time building the products and services their customers want.
Here’s a more detailed look at how Sentry integrates with Atlassian products and leverages Bitbucket’s new Code Insights feature.
Integrating Bitbucket and Sentry helps you get ahead of errors in releases, watch out for errors on changed files, and view suspect commits on a given error.
- Pipes: With the Sentry Pipe for Bitbucket Pipelines, you’ll be able to automatically manage releases and quickly surface errors associated with a given build.
- Code Insights: Sentry Code Report extends the Pipe. It scans all files changed in a given PR and deep links into Sentry so you can see errors associated with the files you’re about to merge to master.
Getting set up with Sentry’s code insights integration is as simple as copy, paste, edit two strings… literally. Just add the following snippet to the script section of your ‘bitbucket-pipelines.yml’ file:
- pipe: sentryio/sentry-code-report:0.0.6 variables: SENTRY_ORG: '<string>' SENTRY_PROJECT_ID: <number>
Enter your Sentry organization and project id. The next time you or someone on your team opens a pull request, a new Sentry error report will appear in the right menu bar.
Software errors are inevitable, hopefully now with the Sentry and Bitbucket’s Code Insights, software teams can get a jump on fixing issues as they ship new features and services.
- Suspect Commits: Sentry gives you client, OS, user impact, and commit data out of the box. With commit data, Sentry shows the exact commit that caused a given error. Needle in the haystack? Found.
Unfortunately, some errors can’t be fixed quickly. Sometimes for even the most straightforward issues, you need to get it on the right team’s backlog.
By integrating Sentry with Jira or Sentry with Trello, devs can create a Jira issue or a Trello card right from the Sentry UI. Sentry also supports 2-way sync with Jira. Here’s how it works: after you create the Jira issue in Sentry, it shows up in your Jira project. Then, any changes in Jira are instantly reflected in Sentry or vice versa, so your teams can maintain context no matter which tool they’re working in. Here’s a quick 2 minute video to illustrate how this works.
And finally, when you want to escalate critical issues, Opsgenie automatically notifies the right people on your team via a predefined escalation path.
When you integrate Opsgenie with Sentry and create rules that define a critical issue, Sentry will create a new incident in Opsgenie. Opsgenie will inspect the payloads Sentry sends to figure out who exactly to notify. Sentry gives those folks access to the full error report, showing them the exact line of code that caused the critical error so they can diagnose, fix, and deploy a solution.
When all the pieces are in place, dev teams can catch software errors before they inflict damage like lost customers or wasted resources.
- Sentry notifies software teams of errors in Slack
- Your team can create tickets in Jira or cards in Trello
- Critical errors can automatically be escalated to the right people via OpsGenie
- Developers fix and deploy a solution from Bitbucket
And let’s be honest, automating these processes beats tabbing through console errors or, worse, your customer notifying you of those errors.
Dev teams deserve to have all the information they need to cut resolution time, free up dev cycles, and ultimately, deliver experiences that create happier customers. But don’t take my word for it. Watch how the Bitbucket team uses Sentry to build Bitbucket.