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 thepropagatesetting 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