I am trying to configure some logging for Python. From
http://docs.python.org/howto/logging.html
It is recommended that we use a YAML configuration file –
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]
In my code, I use this as –
import logging.config
logging.config.dictConfig('logging.config')
However, on running it, I get an error
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
So it seems that I am invoking the config file in an incorrect way. Just can’t find the right way to invoke it. Help please?
Thanks so much
You need to load and parse the YAML file: