Это зависит от того, что именно вы хотите, чтобы произошло. Вы можете использовать Фильтр или Адаптер для изменения уровня журнала.
Фильтр проще, но работает правильно только для понижения уровня журнала.
Преимущество решения адаптера заключается в настройке уровень в кратчайшие сроки. Недостатком адаптера является просто обертка вокруг регистратора, поэтому вам нужно передать его во все места, где будет использоваться регистратор. Если это сторонний модуль, адаптера решение будет невозможно.
# Using filters
import logging
def changeLevel(record):
if record.levelno == logging.INFO:
record.levelno = logging.DEBUG
record.levelname = "DEBUG"
return record
logger = logging.getLogger('name')
logger.addFilter(changeLevel)
# Using an adapter
import logging
class ChangeLevel(logging.LoggerAdapter):
def log(self, level, msg, *args, **kwargs):
if level == logging.INFO:
level = logging.DEBUG
super().log(level, msg, args, kwargs)
logger_ = logging.getLogger('name', {})
logger = ChangeLevel(logger_)