logger.debug("A non-critical exception occurred", exc_info=True) logger.debug("Invalid object '%s'", obj)
As there are real advantages to providing a template and object args separately, this is a bit of a shame since it pushes people to use pre-formatted strings without any args instead. logger.debug("Invalid object of type {0.__class__.__name__}: {0}", obj)
[0]: https://github.com/pR0Ps/bracelogger
I feel like a bit of a fraud because this was the PR that got me the "Mars 2020 Contributor" badge...