python - 使用 FileHandler 和 dictConfig 进行 Python 日志记录 - 在“文件名”中使用环境变量?
问题描述
我正在使用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
要初始化的。我这样做的原因是将我的记录器配置保存在一个文件中,而不是分散在各处。但是,当涉及到 json 文件中的“文件名”参数时,我遇到了一个问题。我想做的是能够写出类似的东西"filename": "%APPDATA%\\Nymus\\Logs\\Logs/log
这种事情可能吗?我研究了使用args
参数将参数传递给“类”中列出的任何内容,但我根本无法让它工作。
解决方案
推荐阅读
- makefile - makefile 中冒号后的管道:/home/.ssh/config: | /home/.ssh
- python - Python中的列表数据结构
- javascript - 使用Javascript从右到左滚动进度条
- java - 无法获得 kafka 的偏移滞后。原因:org.apache.kafka.shaded.common.config.ConfigException
- node.js - 在 Express 中,我的路由目录中的 router.get('/') 如何处理除 '/' 以外的请求?
- javascript - 浏览器扩展:加载元素时如何执行函数
- arrays - 如何在 Ruby on Rails 中拆分字符串并将其转换为值列表
- micronaut - 如何将外部 application.yml 加载到使用 Micronaut Picocli 开发的应用程序中?
- javascript - 从现有数组创建新数组
- php - php ucfirst ucwords 讨论