At Codeship we are quite heavy users of Rollbar, a fantastic service that “collects and analyzes errors on web and mobile apps so you can find and fix them faster”. They also provide you with an API to track deployments of your application. This allows you to gain more insight into your deployments, without you having to spending a lot of effort. You can, for example, track errors over multiple deployments and see if they got resolved or are happening again.
Of course, an optimal (Continuous) Deployment tool should integrate Rollbar (and every other useful service) directly. It should not force you to use shell commands. But as services come and go and development teams are limited, sometimes you have to do it yourself.
Pushing Deployment Information with Rollbar
Here is the command the team at Rollbar suggests to push deployment information to their service.https://gist.github.com/mlocher/f6802da55fc8e82f93f6.jsThis should be extremely to easy to integrate into almost any deployment process. And the Rollbar team additionally provides a bunch of other integrations with tools such as Capistrano or Fabric in their documentation.
If you integrate this command into your deploy pipeline you get nice annotations in your graphs as well as an extremely well done integration throughout the rest of the app. For example Rollbar tries to figure out which deployment is responsible for a certain exception.
How Rollbar helps Codeship
We use Rollbar in all of our services. Of course we also track the deployments of these services. Most of the time we use it with a shell command quite similar to the one above, sometimes integrated with similar commands for other services. More than once this integration has helped us drill down into a certain exception so we could figure out which commit introduced it and how to fix it.
We want to thank the Rollbar team around Brian and Cory for their awesome service. If you are looking to integrate an exception tracking service into your application, make sure to check them out. Are you a Rollbar user? I would love to hear your thoughts in the comments!