验证码: 看不清楚,换一张 查询 注册会员,免验证
  • {{ basic.site_slogan }}
  • 打开微信扫一扫,
    您还可以在这里找到我们哟

    关注我们

SpringCloud怎么使用logback日志框架

阅读:691 来源:乙速云 作者:代码code

SpringCloud怎么使用logback日志框架

      一.依赖引入

      如果项目是spring web项目,并且已经引入了下面依赖,可以直接使用:

      
      	org.springframework.boot
      	spring-boot-starter-web
      

      如果你的项目不是web应用,则可以引入依赖:

      
          1.1.11
      
      
      
          ch.qos.logback
      	logback-access
      	${logback.version}
      
      
      ch.qos.logback
      	logback-classic
      	${logback.version}
      	
      
      ch.qos.logback
          logback-core
      	${logback.version}
      

      如果你项目中是spring cloud 2.x版本,则logback版本号${logback.version}可以用:

        1.2.3

      Spring Cloud 1.x 依赖的logback-classic版本号是:

        1.1.11

      二.logback-spring.xml配置

      logback-spring.xml命名要加上-spring,表明它是一个专门为Spring应用准备的Logback配置文件,此文件将把Spring的日志信息输出到Logback的日志系统中,而且这样才可以使用 这种根据不同环境切换不同日志输出规则的配置。

      提供一个完整的配置文件,可以根据自己项目定制配置:

      
      
      
          logback
             
          
      
          
          
              
                  %d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
              
          
      
        
          
              ${log.name}.log
              
              
                  
                  ${log.name}.%d{yyyy-MM-dd}.%i.log.gz
                  
                  100MB
                  
                  7
                  
                  10GB
              
              
              
                  UTF-8
                  %d [%t] %-5level %logger{36}.%M(%file:%line) - %msg%n
              
          
      
      
      
          
      
          
              
              
              
                  
                  
              
          
      
          
              
              
              
                  
                  
              
          
      
          
              
              
              
                  
                  
              
          
      
          
              
              
              
                  
                  
              
          
      
      

      其中要修改配置的地方:

      1.日志文件名要配置,这个最好以自己项目名称命名,如:xxx.log
      2.日志保留策略要配置,上面默认保留7天并且总日志大小不能超过10G,否则logback会自动删除
      3.项目配置文件名称要配置,如果你的配置文件命名是application-local.properties、application-dev.properties、application-test.properties、application-pro.properties可使用上述配置,如果不是则需要按自己配置文件真实后缀名,修改: 这四行配置。

      三.配置文件application.properties所需配置

      1.配置文件中声明项目名称:

      spring.application.name=demo

      2.可以根据不同的配置文件,决定是不是要打印Mybatis日志,配置如下:

      ①.关闭生产Mybatis日志

      修改application-pro.propertities文件,增加配置:

      #关闭Mybatis日志
      mybatis.configuration.log-impl=org.apache.ibatis.logging.nologging.NoLoggingImpl
      ②.打开开发、测试环境Mybatis日志

      application.properties中增加配置:

      #打印Mybatis日志
      mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

      四.如果想让开发、测试、生产等环境共用一套logback配置,可使用logback.xml:

      文件名可直接用logback.xml,不需要用logback-spring.xml来命名了,因为不需要使用 这种配置来区分环境了。

      
      
      
          logback
          
      
          
              
                  %d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
              
          
      
          
              ${log.name}.log
              
                  ${log.name}.%d{yyyy-MM-dd}.%i.log.zip
                  
                  100MB
                  
                  7
                  
                  10GB
              
              
              
                  UTF-8
                  %d [%t] %-5level %logger{36}.%M(%file:%line) - %msg%n
              
          
      
          
              
              
          
      
      

      五.如何高效的使用log.debug()打印日志

      log.debug()使用时,最好增加判断,防止条件不满足时候,也会执行打印日志的代码,造成不必要的资源消耗。比如打印日志语句中存在对象转字符串等操作时,增加判断后,将不再消耗系统资源。

      if (log.isDebugEnabled()) {
          log.debug("1.完成将文本数据导入到XML文件中");
      }
    分享到:
    *特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: hlamps#outlook.com (#换成@)。
    相关文章
    {{ v.title }}
    {{ v.description||(cleanHtml(v.content)).substr(0,100)+'···' }}
    你可能感兴趣
    推荐阅读 更多>