Tracking Deployments
Honeybadger has an API to keep track of project deployments. Whenever you deploy, all errors for that environment will be resolved automatically. You can choose to enable or disable the auto-resolve feature from your Honeybadger project settings page.
Deploying with GitHub Actions
If your CI/CD pipeline is hosted with GitHub Actions, you can use the Honeybadger Deploy Action to notify our API about deployments.
Capistrano Deployment Tracking
In order to track deployments using Capistrano, simply require Honeybadger's Capistrano task in your Capfile
file:
require "capistrano/honeybadger"
If you ran the honeybadger install
command in a project that was previously configured with Capistrano, we already added this for you.
Adding options to your config/deploy.rb file allows you to customize how the deploy task is executed. The syntax for setting them looks like this:
set :honeybadger_env, "preprod"
You can use any of the following options when configuring capistrano.
Option | |
---|---|
honeybadger_user |
Honeybadger will report the name of the local user who is deploying (using whoami or equivalent). Use this option to to report a different user. |
honeybadger_env |
Honeybadger reports the environment supplied by capistrano by default. Use this option to change the reported environment. |
honeybadger_api_key |
Honeybadger uses your configured API key by default. Use this option to override. |
honeybadger_async_notify |
Run deploy notification task asynchronously using nohup . True or False. Defaults to false. |
honeybadger_server |
The api endpoint that receives the deployment notification. |
honeybadger |
The name of the honeybadger executable. Default: "honeybadger" |
honeybadger_skip_rails_load |
Skip loading the Rails environment during deploy notification. |
Heroku Deployment Tracking
Deploy tracking via Heroku is implemented using Heroku's app webhooks. To set up the webhook, run the following CLI command from your project root:
bundle exec honeybadger heroku install_deploy_notification
If the honeybadger CLI command fails for whatever reason, you can add the deploy hook manually by running:
heroku webhooks:add -i api:release -l notify -u "https://api.honeybadger.io/v1/deploys/heroku?repository=git@github.com/username/projectname&environment=production&api_key=asdf" --app app-name
If you are using our EU stack, you should use eu-api.honeybadger.io
instead of api.honeybadger.io
in the webhook URL.
For more about manual use of Heroku deploy tracking, see the Heroku Deployments guide.
You should replace the repository
, api_key
, and app
options with your own values. You may also want to change the environment (set to production by default).
Deployment Tracking via Command Line
We provide a CLI command to send deployment notifications manually. Try the following command for the available options:
bundle exec honeybadger help deploy
Ruby Deployment Tracking
You can also track a deployment from the honeybadger Ruby gem with Honeybadger.track_deployment
:
Honeybadger.track_deployment(
environment: Rails.env,
revision: `git rev-parse HEAD`.strip,
local_username: `whoami`.strip,
repository: "git@github.com:user/example.git"
)