springboot学习笔记之日志

日志

SpringBoot默认日志级别:INFO

spring配置文件中的logging.file和logging.path的区别

  • 两个都指定的话则logging.file起作用
  • 只指定logging.file的文件名,不指定路径,则输出到项目下的该文件
  • 指定logging.file的文件名和存放路径,如logging.file=G:/springboot.log,则在G盘产生该日志文件
  • 只指定logging.path则默认在该路径下输出默认文件名spring.log的日志文件
    | logging.file | logging.path | Example | Description |
    | ------------ | ------------ | -------- | ----------------------- |
    | (none) | (none) | | 只在控制台输出 |
    | 指定文件名 | (none) | my.log | 输出日志到my.log文件 |
    | (none) | 指定目录 | /var/log | 输出到指定目录的 spring.log 文件(springboot默认起名)中 |

如果项目目录为:D:/develop/idea_workspace/project,则在windows情况下指定日志logging.file为/logs/info.log则将会在当前项目所在磁盘根路径D盘下产生logs文件夹,里面存放日志info.log

<-- 日志输出格式:
%d表示日期时间,
%thread表示线程名,
%-5level:级别从左显示5个字符宽度
%logger{50} 表示logger名字最长50个字符,否则按照句点分割。 
%msg:日志消息,
%n是换行符
-->
%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n

下附完整的springboot结合logback日志配置文件




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

      
    
        
        ${LOG_HOME}/${appName}.log
        
        
            
            ${LOG_HOME}/${appName}-%d{yyyy-MM-dd}-%i.log
            
            365
            
            
                100MB
            
        
             
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [ %thread ] - [ %-5level ] [ %logger{50} : %line ] - %msg%n
        
    

    
    
    
    
    



    
    
        
        
    
 

SpringBoot默认日志配置

springboot学习笔记之日志_第1张图片 base.xml中包含了defaults.xml,则引用了该文件,在base.xml中有一句如下: `` 这个value的意思是,取出LOG_File变量的值,冒号的意思是如果没有定义该值的情况下就用冒号后面的值,解读为如果LOG_FILE这个值没有定义则使用LOG_PATH的值,如果LOG_PATH的值没有定义使用LOG_TEMP的值,以此类推 #### logback.xml和logback-spring.xml区别 要使用自己的日志配置,则在类路径下定义日志配置文件,我们选择logback,而springboot中提供了另一种配置文件命名方式logback-spring,那么这种命名方式和日志框架原生的这种命名方式区别在哪里呢?

logback.xml:会直接被日志框架识别
logback-spring.xml:可以被spring识别管理,可以使用spring的特性,使得某段配置只在某个环境下起作用,比如我们制定开发环境下打印在控制台上,测试和生产环境滚动输出到文件中

你可能感兴趣的:(springboot学习笔记之日志)