如何关闭Python Azure Identity 1.7.1模块终端多余HTTP请求输出
禁止Azure Python SDK HTTP状态日志输出的解决方案
你遇到的大量HTTP状态日志来自Azure Python SDK的azure-core依赖包默认开启的INFO级日志输出,包含HTTP请求状态码、请求响应头、调用链路等调试信息。
方案1:修改代码配置日志级别(永久生效)
在你代码的入口位置(导入Azure相关库之前)添加以下日志配置代码即可:
import logging # 精准禁用HTTP日志策略的INFO输出,不影响其他Azure日志的警告/错误上报 logging.getLogger("azure.core.pipeline.policies.http_logging_policy").setLevel(logging.WARNING) # 如果需要屏蔽所有Azure SDK的INFO级日志,可以用下面这行代替上面的 # logging.getLogger("azure").setLevel(logging.WARNING) # 如果同时出现MSAL身份认证相关的冗余日志,再加下面这行 # logging.getLogger("msal").setLevel(logging.WARNING)
说明:配置后仅会输出Azure SDK的警告和错误信息,所有INFO级别的HTTP请求日志不会再打印到终端
方案2:临时调整环境变量(无需修改代码)
如果不想改动现有代码,可以在运行代码前设置环境变量调整Azure SDK的日志级别:
- Windows CMD终端:
set AZURE_SDK_LOGGING_LEVEL=warning - Windows PowerShell终端:
$env:AZURE_SDK_LOGGING_LEVEL = "warning" - Linux/macOS终端:
export AZURE_SDK_LOGGING_LEVEL=warning
配置完成后再执行你的Python代码即可生效,终端关闭后配置自动失效。
注意事项
- 以上配置不会影响你自己代码里的
print输出和自定义logging日志 - 后续如果需要调试HTTP请求问题,将日志级别改回
logging.INFO即可恢复HTTP日志输出
内容的提问来源于stack exchange,提问作者Syam Kallada
相关产品推荐
相关产品推荐

