-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Honeybadger.notify/2 grabs the stacktrace from inside the task process #88
Comments
After a bit more reading of the code, I think |
@silasjmatson I'm sorry for dropping the ball on this; I'm now working on building a better maintenance plan for our Elixir client (and there's new stuff I'd like to add, too!). Anyway, I'm looking into the potential fix in #93 (and getting those PRs reviewed/merged) later this week, and then I'll revisit this issue and see if there's anything left to address. |
Quick update, since this is taking a bit longer than I hoped. I think we're getting close on #93. We're in the process of fixing a few issues I discovered. Once those are resolved I'll probably merge the PR and either let people point their Mixfile at master to test it or release a beta. I just want to make sure this doesn't introduce any new bugs/regressions since it's a big refactor. Excited to ship this! |
@silasjmatson 0.7.0-beta has been released. Can you test it out locally to see if this issue still exists there? To make it report in dev mode you can override |
@joshuap Awesome! I'll give it a whirl later today and report back. |
@joshuap Testing with the beta, everything is golden so far! 👍 |
@joshuap Closing as this is resolved on master and in the 0.7.0-beta. |
@silasjmatson great, thanks! |
The
Honeybadger.notify/2
macro callsmacro_notify/3
, which expects the 3rd argument to be a list containing the stacktrace.However, the
notify/2
macro sends an empty List as the 3rd argument, which means that thisHoneybadger.do_notify/3
function, which pattern matches on the empty list, is the one that is called.The
do_notify/3
function contains a call to get the current stacktrace viaProcess.info(self(), :current_stacktrace)
, which always returns the same stacktrace because it's running within aTask.start/1
process. The stacktrace in the application in which I discovered this issue is always the following wheneverHoneybadger.notify/2
is called:A possible solution could be to grab the stacktrace before the task is spawned in
macro_notify/3
(I'm sure my quick example here probably won't work, as it doesn't take into account the macro context)The text was updated successfully, but these errors were encountered: