Python日志字典配置

Python日志字典配置,python,Python,我正在尝试为Python配置一些日志记录。从…起 建议使用YAML配置文件- version: 1 formatters: simple: format: '%(asctime)s - %(name)s - %(levelname)s - %(message)s' handlers: console: class: logging.StreamHandler level: DEBUG formatter: simple stream: ext://

我正在尝试为Python配置一些日志记录。从…起 建议使用YAML配置文件-

version: 1
formatters:
  simple:
    format: '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
handlers:
  console:
    class: logging.StreamHandler
    level: DEBUG
    formatter: simple
    stream: ext://sys.stdout
loggers:
  simpleExample:
    level: DEBUG
    handlers: [console]
    propagate: no
root:
  level: DEBUG
  handlers: [console]
在我的代码中,我将其用作-

import logging.config

logging.config.dictConfig('logging.config') 
然而,在运行它时,我得到了一个错误

Traceback (most recent call last):
  File "TestLogger.py", line 62, in <module>
    Test5()  
  File "TestLogger.py", line 55, in Test5
    logging.config.dictConfig('logging.dict.2.config') 
  File "/usr/lib/python2.7/logging/config.py", line 776, in dictConfig
    dictConfigClass(config).configure()
  File "/usr/lib/python2.7/logging/config.py", line 380, in __init__
    self.config = ConvertingDict(config)
ValueError: dictionary update sequence element #0 has length 1; 2 is required
回溯(最近一次呼叫最后一次):
文件“TestLogger.py”,第62行,在
测试5()
Test5中第55行的文件“TestLogger.py”
logging.config.dictConfig('logging.dict.2.config')
文件“/usr/lib/python2.7/logging/config.py”,第776行,在dictConfig中
dictConfigClass(config).configure()
文件“/usr/lib/python2.7/logging/config.py”,第380行,在__
self.config=ConvertingDict(配置)
ValueError:字典更新序列元素#0的长度为1;2是必需的
因此,似乎我调用配置文件的方式不正确。只是找不到正确的方法来调用它。请帮忙?
非常感谢

您需要加载并解析YAML文件:

import yaml
logging.config.dictConfig(yaml.load(open('logging.config', 'r')))