python - 我可以将环境变量添加到 python 记录器 ini 文件配置中吗?

标签 python logging python-logging

我想通过 logging.fileConfig() 函数中使用的 log.ini 文件 在文件处理程序中使用环境变量添加自定义日志文件目录。

我尝试在以下内容中添加环境变量:

我的logging.ini看起来像这样:

[loggers]
keys=root

[handlers]
keys=consoleHandler,fileHandler

[formatters]
keys=fileFormatter,consoleFormatter

[logger_root]
level=DEBUG
handlers=consoleHandler, fileHandler
propagate=0

[handler_consoleHandler]
class=StreamHandler
level=WARNING
formatter=consoleFormatter
args=(sys.stdout,)

[handler_fileHandler]
class=FileHandler
level=DEBUG
formatter=fileFormatter
args=('${LOG_DIRECTORY_ENV_VARIABLE}/logname.log',)

我使用以下方式配置它:

from logging.config import fileConfig

fileConfig(f"{BASE_PATH}/resources/logging.ini")

我的代码结果目录为:path/to/file/${LOG_DIRECTORY_ENV_VARIABLE}/logname.log

最佳答案

我认为可以使用另一个 thread 上的答案来解决我的问题。

关于python - 我可以将环境变量添加到 python 记录器 ini 文件配置中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57246817/

相关文章:

python - 为什么 print() 和 logger 对象以意外的顺序流式传输到控制台输出?

python - 字符串的endswith()函数给出了矛盾的结果

Python:如何检查变量的最后三个数字是否为 000?

Python argparse 错误到文件

sql - Azure SQL 创建数据库状态挂起

python - 如何使用python中的validate_email模块验证电子邮件是否处于事件状态

python - Pandas - 时间序列按组移动

python - 如何在 Python 日志记录中设置组合字段的宽度

Python 日志记录 SMTPHandler - 处理离线 SMTP 服务器