honeybadger-io / honeybadger-python

Send Python and Django errors to Honeybadger.
https://www.honeybadger.io/
MIT License
15 stars 25 forks source link

Allow defining custom payload generator #27

Closed ifoukarakis closed 6 years ago

ifoukarakis commented 6 years ago

Hi,

I'd like to suggest a small change to make your library a bit more flexible. The idea is that Honeybadger should allow registering a custom payload generator. This way the developer will be able to register a function that generates the payload matching his/her framework.

An example use case would be supporting Flask and Celery. Right now we're doing something similar by monkey patching generic_request_payload. You can see an example at https://github.com/Workable/honeybadger-extensions.

stympy commented 6 years ago

Thanks for the suggestion! We do something similar in our Ruby library via plugins, and I think it makes sense to have a similar kind of functionality here.

Here's the list of plugins and the plugin loader from our Ruby gem, if you're curious.

A PR would be fantastic 😁 -- otherwise, we'll add it to our todo list.

ifoukarakis commented 6 years ago

I created a PR. If it gets merged, I can create a couple more for Flask & Celery.