类型错误:_log() 获得意外的关键字参数“stacklevel”

abh*_*rav 4 python logging exception

将 stacklevel 与 log.error 一起使用会产生此错误。前任:

logger = logging.getLogger('tcpserver')
logger.error("Connection problem", stack_info=sys.exc_info(), stacklevel=1)
Run Code Online (Sandbox Code Playgroud)

根据文档:kwargs 中有四个要检查的关键字参数:exc_info、stack_info、stacklevel 和 extra。

请参阅https://docs.python.org/3/library/logging.html#logging.Logger.debug

Ond*_* K. 5

您正在查看的文档和您的解释器的版本不匹配。而且它也有记录:https ://docs.python.org/3.8/library/logging.html#logging.Logger.debug

3.8 版更改:添加了 stacklevel 参数。

升级你的解释器,或者使用匹配的文档,例如: https: //docs.python.org/3.7/library/logging.html#logging.Logger.debug(通常不要忘记检查底部的 API 更改注释) ,也为了与其他可能的用户及其环境兼容)。