Я новичок в Python и пытаюсь внедрить регистратор в свой код. Я создал файл python: setup_logger.py
import logging
CLASS_NAME = ''
# Create and configure logger
LOG_FORMAT = '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
logging.basicConfig(filename='/Users/bobby/Desktop/lumberjack.log', level=logging.DEBUG, format=LOG_FORMAT)
logger = logging.getLogger()
Я использую эту конфигурацию регистратора в другом python файле: GetLogger.py, как показано ниже
from LoggerLevels.setup_logger import logger
if __name__ == '__main__':
logger.error('This is a basic log error message')
logger.info('This is a warning message')
Журнал печатается в файле как:
2020-06-17 14:54:47,161 - root - ERROR - This is a basic log error message
2020-06-17 14:54:47,161 - root - INFO - This is a warning message
Но я вижу, что имя класса печатается как root
. Я так понимаю, это связано с настройкой в файле setup_logger.py
. Есть ли способ отправить текущее имя класса, который регистрирует сообщения в моем файле? Например: я использую объект регистратора из файла GetLogger.py
. Есть ли способ записать сообщение как
2020-06-17 14:54:47,161 - GetLogger - ERROR - This is a basic log error message
2020-06-17 14:54:47,161 - GetLogger - INFO - This is a warning message
Может ли кто-нибудь сообщить мне, как я могу этого добиться?