На мой взгляд, лучший способ добиться хорошей гибкости, позволяя администраторам настраивать ваши параметры ведения журнала, - это использовать этот файл конфигурации в файле ini
:
[loggers]
keys=root
[handlers]
keys=stream_handler
[formatters]
keys=formatter
[logger_root]
level=DEBUG
handlers=stream_handler
[handler_stream_handler]
class=StreamHandler
level=DEBUG
formatter=formatter
args=(sys.stderr,)
[formatter_formatter]
format=%(asctime)s %(name)-12s %(levelname)-8s %(message)s
После этого вы можете прочитать этоКонфигурация в вашем приложении:
import logging
from logging.config import fileConfig
fileConfig('logging_config.ini')
logger = logging.getLogger()
logger.debug('your debug message')
Вы можете проверить больше здесь .