Я настраиваю запись с помощью dictConfig
. Я храню конфигурацию в json файле
{
"version": 1,
"disable_existing_loggers": "True",
"formatters":{
"default":{
"format": "%(levelname)s : %(asctime)s : %(name)s - Bum holes %(message)s",
"datefmt": "%Y-%m-%d %H:%M:%S"
}
},
"handlers":{
"file":{
"class": "logging.handlers.TimedRotatingFileHandler",
"when": "midnight",
"interval": 1,
"formatter": "default",
"filename": "Nymus\\Logs\\Logs.log"
}
},
"root":{
"handlers": ["file"]
}
}
, который затем передается в logging.config.dictConfig
для инициализации. Причина, по которой я это делаю, заключается в том, чтобы сохранить конфигурацию моего логгера в одном файле и не разбросать по нему. Однако я столкнулся с проблемой, когда дело доходит до параметра «filename» в файле json. Я хочу написать что-то вроде "filename": "%APPDATA%\\Nymus\\Logs\\Logs/log
Возможно ли такое? Я рассмотрел использование параметра args
для передачи параметров всем, что перечислено в «классе», но я не мог заставить это работать вообще.