Show full stack trace in error messages/logs #30
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When an exception is handled like this:
it can be difficult to troubleshoot the error when the error message
e
isn't helpful on its own.(It's best to avoid catching the generic
RuntimeError
(orException
) whenever possible, and catch a more specific type of error that you know the code might throw.)If you don't want the code to re-raise the exception after printing out the error message, you can make use of the function
traceback.print_exec()
to print the full error trace when that would be helpful. The newutils.capture_error_trace()
function is helpful in that it capture the output oftraceback.print_exec()
in a variable, which we can then hand off tologger.error()
.