SpringBoot学习(三)--Spring profile多环境方式实现logback日志配置

继上一篇搭建基础web开发框架后,继续学习和完善项目工程。SpringBoot集成了logback,所以只需要配置一下就可以,这里使用自带Spring profile方式进行多环境配置。

简介

Spring profile是Spring 3引入的概念,主要用在项目多环境运行的情况下,通过激活方式实现多环境切换,省去多环境切换时配置参数和文件的修改,相比较Maven profile简单实用,易于上手。并且Spring profile提供了多种激活方法,例如配置文件,注解,jvm参数设置等等

Spring profile多环境配置

1.在根目录(建议以application开头命名方式)新建各环境配置文件,例如图
这里写图片描述

2.分别配置各环境有差异的配置,共有配置可以配置在application.yml,例如application-dev配置开发环境的日志配置,application-prd配置生产环境的日志配置(具体日志配置下面介绍)。

这里写图片描述

3.在application.yml加上当前生效的环境配置,例如profiles:active:dev表示当前生效的环境配置为application-dev.yml,事先配好每个环境的配置,切换环境时只需要修改active:dev即可,无需复杂的修改各个配置。 

这里写图片描述

这里写图片描述

logback日志配置

这里logback-dev环境,使用了简单同步配置的日志输入方式,如下




   
   
   
   
   
   
   
   

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

   

   
   
       
        ${logPath}/cms.log
       
       
            %d{yyyy-MM-dd HH:mm:ss} %-4relative [%thread] %-5level %logger{35} - %msg %n
       

       
            ${logLevel}
            ACCEPT
            DENY
       

       
       
           
            ${logPath}/cms-%d{yyyy-MM-dd}.log
           
            ${maxHistory}
       

   


   
   
   
   
       
       
   


输出为:

这里写图片描述

logback-prd环境,使用了异步分级别日志输出方式,如下




   
   
   
   
   
   
   
   

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

   

                  class="ch.qos.logback.core.rolling.RollingFileAppender">
       
            DEBUG
            ACCEPT
            DENY
       

        ${logPath}/cms_debug.log
       
            ${logPath}/cms_debug.log.%d{yyyy-MM-dd}.zip
           

            ${maxHistory}
       

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

   

                  class="ch.qos.logback.core.rolling.RollingFileAppender">
       
            INFO
            ACCEPT
            DENY
       

        ${logPath}/cms_info.log
       
            ${logPath}/cms_info.log.%d{yyyy-MM-dd}.zip
           

            ${maxHistory}
       

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

   

                  class="ch.qos.logback.core.rolling.RollingFileAppender">
       
            WARN
            ACCEPT
            DENY
       

        ${logPath}/cms_warn.log
       
            ${logPath}/cms_warn.log.%d{yyyy-MM-dd}.zip
           

            ${maxHistory}
       

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

   

                  class="ch.qos.logback.core.rolling.RollingFileAppender">
       
            ERROR
            ACCEPT
            DENY
       

        ${logPath}/cms_error.log
       
            ${logPath}/cms_error.log.%d{yyyy-MM-dd}.zip
           

            ${maxHistory}
       

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

   

   
       
        0
       
        ${queueSize}
       
   

   
       
        0
       
        ${queueSize}
       
   

   
       
        0
       
        ${queueSize}
       
   

   
       
        0
       
        ${queueSize}
       
   

   
       
       
       
       
       
       
   


输出为:

这里写图片描述

 

你可能感兴趣的:(SpringBoot框架)