Python3.9更新依赖包后遇TypeError: _log()参数'exc_info'异常
排查依赖更新后日志
exc_info参数错误的方法 更新的依赖清单
azure-ai-formrecognizer = "==3.1.1" to "==3.2.1" azure-identity = "==1.11.0" to "==1.12.0" azure-keyvault-secrets = "==4.6.0" to "==4.7.0" nltk = "==3.4.4" to "==3.6.6" numpy = "==1.21.1" to "==1.22" tabulate = "==0.8.3" to "==0.9.0" requests = "==2.23.0" to "==2.29.0" camelot-py = "==0.8.2" to "==0.11.0" tabula-py = "==2.0.4" to "==2.7.0" PyPDF2 = "==1.26.0" to "==1.27.5" logzio-python-handler = "==3.0.0" to "==4.0.1"
错误分析
TypeError: _log() got an unexpected keyword argument 'exc_info' 说明某个日志处理类重写的_log()方法未兼容Python标准logging模块的exc_info参数。本次更新中,logzio-python-handler作为直接处理日志的依赖,版本从3.x跨升到4.x,是最可能的问题来源。
排查步骤
优先验证日志依赖:回退
logzio-python-handler到旧版本,执行命令:pip install logzio-python-handler==3.0.0运行项目,若错误消失,即可确认是该包更新导致的问题。
检查日志调用代码:查看项目中是否有显式传递
exc_info参数的日志调用(如logger.exception()或logger.error(..., exc_info=True)),对比logzio-python-handler4.0.1版本的_log()方法签名,确认是否移除了对该参数的支持。适配或回退版本:若确认是
logzio-python-handler的问题,可选择:- 修改项目代码,适配新版本的日志调用方式;
- 暂时回退到3.0.0版本,等待包修复该兼容性问题;
- 向该包的维护仓库提交问题反馈。
排除其他依赖影响:若回退后错误仍存在,逐个回退其他可能涉及日志配置的依赖(如Azure系列包),每次回退后测试项目,定位根源。
内容的提问来源于stack exchange,提问作者Theo De Souza
相关产品推荐
相关产品推荐

