Я настраиваю регистратор python, и у меня возникли проблемы с указанием c имени в зависимости от файла, который он вызывает регистратор.
Это то, что я хочу войти в файл: 2020-05-06 13:51:31,032 - myModule - WARNING - warn message
Вместо 2020-05-06 13:51:31,032 - sLogger - WARNING - warn message
Это то что у меня
import logging, logging.config
# set up logging
logging.config.fileConfig("config.ini")
logger = logging.getLogger('sLogger')
# log something
logger.debug('debug message')
logger.info('info message')
logger.warn('warn message')
logger.error('error message')
logger.critical('critical message')
И мой config.ini
[loggers]
keys=root,sLogger
[handlers]
keys=consoleHandler,fileHandler
[formatters]
keys=fileFormatter,consoleFormatter
[logger_root]
level=DEBUG
handlers=consoleHandler
[logger_sLogger]
level=DEBUG
handlers=consoleHandler,fileHandler
qualname=sLogger
propagate=0
[handler_consoleHandler]
class=StreamHandler
level=WARNING
formatter=consoleFormatter
args=(sys.stdout,)
[handler_fileHandler]
class=FileHandler
level=DEBUG
formatter=fileFormatter
args=('logfile.log',)
[formatter_fileFormatter]
format=%(asctime)s - %(name)s - %(levelname)s - %(message)s
datefmt=
[formatter_consoleFormatter]
format=%(levelname)s - %(message)s
datefmt=
Я видел код вроде logger = logging.getLogger(__name__)
, но таким образом он не вызывает slogger
.
Как я могу получить и то, и другое?