Honeybadger for Elixir
This is the Elixir Plug, Logger, and client for integrating apps with the ⚡ Honeybadger Exception Notifier for Elixir and Phoenix.
When an uncaught exception occurs, Honeybadger will POST the relevant data to the Honeybadger server specified in your environment. Honeybadger can also send automatic performance events from Phoenix, Ecto, Oban, and more to Honeybadger Insights.
Documentation and Support
For comprehensive documentation and support, check out our documentation site.
API documentation is available on HexDocs.
Changelog
The CHANGELOG is generated automatically as part of the release process, using conventional commits.
Development
Pull requests are welcome. If you're adding a new feature, please submit an issue as a preliminary step; that way you can be (moderately) sure that your pull request will be accepted.
To contribute your code:
- Fork it.
- Create a topic branch
git checkout -b my_branch - Commit your changes
git commit -am "feat: add a thing" - Push to your branch
git push origin my_branch - Send a pull request
PR titles must follow the conventional commits format.
Running the tests
To run the same tests as CI (the main suite plus the dummy/mixapp tests):
mix deps.ci
mix test.ci
To run only the main test suite:
mix deps.get
mix test
Releasing
Releases are automated, using GitHub Actions:
- When a PR is merged on master, the elixir.yml workflow is executed, which runs the tests.
- The publish.yml workflow uses release-please to open or update a release PR with the suggested version bump and changelog, based on the commit messages.
Note: Not all commit messages trigger a new release, for example,
chore: ...will not trigger a release. - When the release PR is merged, the publish.yml workflow runs again, creates a GitHub release, and publishes the package to Hex.pm.
License
This library is MIT licensed. See the LICENSE file in this repository for details.