Мені б хотілося, щоб у моєму застосуванні був корівник TRACE (5), оскільки я не думаю, що debug()
це достатньо. Крім того log(5, msg)
, не те, що я хочу. Як я можу додати користувальницький loglevel до реєстратора Python?
У мене є mylogger.py
такий вміст:
import logging
@property
def log(obj):
myLogger = logging.getLogger(obj.__class__.__name__)
return myLogger
У своєму коді я використовую його наступним чином:
class ExampleClass(object):
from mylogger import log
def __init__(self):
'''The constructor with the logger'''
self.log.debug("Init runs")
Тепер я хотів би зателефонувати self.log.trace("foo bar")
Заздалегідь дякую за вашу допомогу.
Редагувати (8 грудня 2016 р.): Я змінив прийняту відповідь на pfa's, що є, IMHO, відмінне рішення, засноване на дуже хорошій пропозиції Еріка С.