Logback 未按预期过滤到控制台输出的日志级别

目标是:

  1. -Dlog.level=DEBUG通过 JVM args( )(默认)仅将所需的日志级别写入控制台输出INFO。(不起作用)
  2. 将 DEBUG 级别写入ROLLING_FILE_DEBUG文件附加器。(工作正常)
  3. 将 INFO 级别写入ROLLING_FILE文件附加器。(工作正常)

我想定义在控制台中应输出什么,通过使用INFO默认方式传递 JVM 参数,RollingFileAppender附加程序按预期工作。但在默认模式下运行时,我仍然会DEBUG在控制台输出中看到级别日志。我还没有传递任何 JVM 参数,只是尝试按定义默认模式

logback.xml




    
    
    

    
    
        
            ${LOG_LEVEL}
        
        
            %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
        
    

    
    
        
            INFO
        
        
        logs/accesscontrol-logs.log

        
        
            
            logs/accesscontrol-logs-%d{yyyy-MM-dd}.%i.log
            
            30
            
            

            
                10MB
            
        

        
        
            %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
        
    

    
    
        
            DEBUG
        
        
        logs/accesscontrol-debug-logs.log

        
        
            
            logs/astrusaccesscontrol-debug-logs-%d{yyyy-MM-dd}.%i.log
            
            30
            


            
                10MB
            
        

        
        
            %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
        
    

    
    
        
        
        
    

我尝试使用logger但是root这种方法导致没有日志输出到控制台。



    
    




    

要设置默认值,必须-在默认值前面添加 字符。如果要将默认值设置为INFO,则应将其设置为-INFO

运行命令:

默认日志级别是INFO

java -jar app.jar --logging.config=file:./logback.xml

设置日志级别为DEBUG

java -Dlog.level=DEBUG -jar app.jar --logging.config=file:./logback.xml

告诉 Spring Boot 应用程序,日志配置文件使用与 app.jar 在同一目录中指定的外部文件 logback.xml。

--logging.config=file:./logback.xml

你可能感兴趣的:(Java,jvm,java,开发语言)