I want to setup a Sentry logger for a Django project. I will define a sentry
handler and will put that handler in the root logger with error
level.
According to the documentation of logging
module, there a special root
key:
root
- this will be the configuration for the root logger. Processing of the configuration will be as for any logger, except that thepropagate
setting will not be applicable.
At the same time in other places a logger with name ''
is used to contain configuration for the root logger.
Does this have the same effect? What is preferable?
>>> import logging
>>> logging.getLogger('') is logging.root
True
>>>
Either way will work, because the logger named ''
is the root logger. Specifying the top-level key root
makes it clearer what you're doing if you're configuring a lot of loggers - the ''
logger configuration could be lost inside a group of others, whereas the root
key is adjacent to the loggers
key and so (in theory) should stand out more.
To reiterate, the key named root
is a top-level key; it's not under loggers
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With