PythonロギングモジュールとCherryPyのConfigAPIはどちらもConfigParserファイルを使用します。したがって、私は、自分のアプリケーション構成、ログ構成、およびCherryPyの構成に単一の構成ファイルを使用できると想定しました。
ロギングとCherryPyが別々の場合、それらは正常に機能し、ConfigParserAPIを使用して構成ファイルはエラーなしで解析されます。ただし、CherryPyはこのセクションで吠えているようです。
[loggers]
keys=root,myapp,cherrypy,cperror,cpaccess
次の例外を与える:
Traceback (most recent call last):
File "/usr/lib/python2.6/multiprocessing/process.py", line 232, in _bootstrap
self.run()
File "/usr/lib/python2.6/multiprocessing/process.py", line 88, in run
self._target(*self._args, **self._kwargs)
File "unittests.py", line 431, in main
cherrypy.config.update(server.CONFIG_FILE)
File "/usr/lib/pymodules/python2.6/cherrypy/_cpconfig.py", line 263, in update
config = _Parser().dict_from_file(config)
File "/usr/lib/pymodules/python2.6/cherrypy/_cpconfig.py", line 383, in dict_from_file
return self.as_dict()
File "/usr/lib/pymodules/python2.6/cherrypy/_cpconfig.py", line 374, in as_dict
raise ValueError(msg, x.__class__.__name__, x.args)
ValueError: ("Config error in section: 'loggers', option: 'keys', value: 'root,myapp,cherrypy,cperror,cpaccess'. Config values must be valid Python.", 'TypeError', ("unrepr could not resolve the name 'root'",))
CherryPyのドキュメントには、CherryPyの構成ファイルを他の構成と分離する必要があるとは書かれていませんが、これが必要になる可能性があると私は考え始めています。ドキュメントには、サイトごとに複数のアプリがある場合、サイトとアプリの構成を分離する必要があるかもしれないと書かれていますが、それは別の問題のようです...それは私のロギング構成をCherryPyアプリの構成と間違えていますか?
これは可能ですか?そうでない場合は、CherryPyがそもそもConfigParserライブラリを使用することさえわざわざする理由がわかりません。