我正在使用python应用程序,该应用程序使用logging.config.fileConfig()函数来加载日志记录配置。问题是一些日志处理程序是FileHandler,它们需要文件路径作为参数之一,而我的应用程序需要在Linux和Windows上运行。
有没有办法以独立于平台的方式指定文件路径。我知道你通常会使用os.path.join(“path”,“to”,“file.log”),但这似乎不适用于这种情况。
例如,日志配置文件的部分如下:
[handler_messageHandler]
class=handlers.RotatingFileHandler
level=DEBUG
formatter=complex
args=('.\\log\\message.log', 'a', 5000000,4)
在Windows上找到但在linux上不正确。我知道我可以简单地提供两个配置文件,但每个文件超过100行,这似乎是一个hacky复制粘贴解决方案。理想情况下,我希望能够在配置文件中执行以下操作:
[handler_messageHandler]
class=handlers.RotatingFileHandler
level=DEBUG
formatter=complex
args=(os.path.join('.', log', 'message.log'), 'a', 5000000,4)