You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何控制azure-identity API的冗余重复日志输出?

解决Azure Identity冗余日志输出问题

你可以通过调整日志框架的配置,针对性地降低或关闭azure-identity和msal4j相关类的日志级别,从而消除这些冗余的INFO日志。以下是几种常见场景的配置方法:

1. Spring Boot项目通过配置文件快速调整

如果你的项目是Spring Boot,可以直接在application.properties或application.yml中添加以下配置:

application.properties

# 关闭AcquireTokenSilentSupplier的INFO日志
logging.level.com.microsoft.azure.msal4j.AcquireTokenSilentSupplier=WARN
# 关闭ClientSecretCredential的INFO日志
logging.level.com.azure.identity.ClientSecretCredential=WARN

application.yml

logging:
  level:
    com.microsoft.azure.msal4j.AcquireTokenSilentSupplier: WARN
    com.azure.identity.ClientSecretCredential: WARN

如果想彻底关闭这些日志,可以把级别设为OFF。

2. 自定义Logback配置(logback.xml/logback-spring.xml)

如果项目使用Logback作为日志框架,在配置文件中添加以下logger节点:

<configuration>
    <!-- 其他原有配置 -->
    
    <!-- 管控冗余日志 -->
    <logger name="com.microsoft.azure.msal4j.AcquireTokenSilentSupplier" level="WARN" additivity="false"/>
    <logger name="com.azure.identity.ClientSecretCredential" level="WARN" additivity="false"/>
</configuration>

additivity="false"可以避免日志被重复输出到根logger中。

3. 自定义Log4j2配置(log4j2.xml)

如果使用Log4j2,在配置文件中添加:

<Configuration>
    <!-- 其他原有配置 -->
    
    <Loggers>
        <!-- 管控冗余日志 -->
        <Logger name="com.microsoft.azure.msal4j.AcquireTokenSilentSupplier" level="WARN" additivity="false"/>
        <Logger name="com.azure.identity.ClientSecretCredential" level="WARN" additivity="false"/>
        <Root level="info">
            <!-- 原有appender配置 -->
        </Root>
    </Loggers>
</Configuration>

这些配置会把你提到的两类冗余INFO日志过滤掉,只保留WARN及以上级别的重要日志(比如认证失败、缓存异常等),既不影响问题排查,又能清理日志输出。

内容的提问来源于stack exchange,提问作者Gunwant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 14:25:34