A guide to a collaborative debugging workflow with Bugsnag
Published on by Eric L. Barnes
It’s essential to have good error monitoring in place in order to understand application stability, and be aware when bugs impact your users. But monitoring your application for errors is only one piece of the debugging process — you also need to take action and fix these bugs to improve your software quality.
To do this, collaborating with your team members on bug fixes, and tracking progress through a defined workflow can help make debugging a smoother process. Having a clear process for working on bug fixes can be extremely beneficial to software teams by making application debugging a simpler task.
Here are some suggestions for making your error monitoring actionable.
Include error alerts into ChatOps to address harmful bugs
You’re probably already communicating in Slack or HipChat, so it makes sense to receive error notifications in your team chat tool. Make sure to send alerts to your engineering channel so you can receive real-time alerts when errors happen in your application.
Automate bug tracking by integrating with your issue tracker
Once you’ve decided which application errors you’ll fix, you should begin tracking this work. Integrating with your issue tracker to automate this step is a smart first move to promote accountability among your team. You can either:
- Save time by automatically creating tickets from errors, and then triage the ones to fix from your issue tracker, or
- Use contextual diagnostic data to pinpoint errors that require fixing, and then create and link an issue with a single click from your error monitoring tool
However you decide to manage error and issues, you’ll want to be sure to enable two-way sync so error status is updated in both systems. This way your team always knows the status of each error.
Get accountable by assigning errors to your collaborators
To ensure harmful errors you’ve found get fixed, assign it to yourself or someone on your team. You can do this in your issue tracker or in your error monitoring tool, but the idea is to make sure someone is responsible for investigating and pushing out a fix, so the error doesn’t slip through the cracks.
Collaborate on bug fixes and keep your team updated
If you need to update your team about the status of the bug, or if there are questions about the fix, having a conversation around the error can also be useful so there’s an easily accessible record of what was done. That way, if the error ever returns, you’ll be able to see a history of what happened.
Bonus tip — Bugsnag’s two-way issue tracker integration will move comments from Bugsnag into your issue tracker, so you can continue having conversations wherever makes most sense.
Clear fixed errors out of your view to stay focused
When you fix a bug, clear it out of your view by marking it Done or Fixed. You’ll be able to focus on new errors that need investigating with it out of the way. In Bugsnag, this action also automatically closes the corresponding issue in your issue tracker, keeping both of your tools updated with the status of bug fixes.
Bonus tip — Errors you mark as Fixed are also monitored in Bugsnag. If they come back in a new version of your application, they are detected as regressions. You’ll receive immediate alerts when this happens, and Bugsnag reopens the error and its issue in your issue tracker. This way, you’ll have the full history available to help you investigate the bug.
These simple tips can help you and your team level up your debugging workflow and hopefully make application debugging more straightforward. And the more efficient you become at debugging, the more time you’ll have to build better features for your users.
Learn more about Laravel error reporting by Bugsnag.
Many thanks to Bugsnag for sponsoring Laravel News and providing this tutorial.
Eric is the creator of Laravel News and has been covering Laravel since 2012.