在哪里可以找到 Python 日志处理程序的配置选项列表?例如,docs假设 TimedRotatingFileHandler 采用“when”参数。如何使用 dictConfig 来定义它?
像这样吗?:
'handlers': {
'file': {
'level': 'DEBUG',
'formatter':'default',
'class': 'logging.handlers.TimedRotatingFileHandler',
'when': 'midnight',
....
},
},
如果是这样,dictConfig 的所有选项名称是否与文档中的代码示例完全对应?只是想知道,因为我还没有找到一个单独的页面列出与 dictConfig 一起使用的选项名称。
最佳答案
这个想法是配置字典中的键名称与构造处理程序(或格式化程序或过滤器)的相应调用中的命名参数相同。这也将适用于外部定义的处理程序。给定一个保存对象配置(如处理程序)的字典 config
,配置代码的作用相当于
constructor = config['class'] # or '()' for a custom object being configured
kwargs = dict([(k, config[k]) for k in config if valid_ident(k)])
obj = constructor(**kwargs)
获取配置的对象。任何不是有效标识符的键都会被忽略。对于处理程序,level、
formatter和
filters`在构造函数调用中也会被忽略,因为它们在日志记录配置中具有特殊意义。
关于python - Python 日志记录处理程序的 dictConfig 配置选项列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8288002/