fix: Replace exception logger function with logger.exception #37
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.
This PR tweaks the way errors are logged, to include more metadata.
I didn't spend a lot of time crafting the logger messages, so suggestions for better ones are very welcome 馃檪
Motivation
We use Sentry for errors, and
saq
currently logs job exceptions in a way that's slightly too generic for Sentry. Since the plaintext dump of a traceback is logged without any extra information, all errors raised bysaq
are bundled together. Moreover, there is a size limit to log message length in Sentry, so we're not even receiving the full tracebacks (see screenshot at the bottom of the comment below).Using
logger.exception
orlogger.error(..., exc_info=True)
(they're the same thing), we're able to get proper Sentry events, containing the complete traceback plus "breadcrumbs"