zoukankan      html  css  js  c++  java
  • spring boot整合slf4j-log日志

    原文地址:https://blog.csdn.net/u011271894/article/details/75735915

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011271894/article/details/75735915

    又过了一天,研究spring boot的学习还得继续,今天说点啥呢?spring boot整合slf4j-log日志,不得不吐槽spring boot按照它默认的方式太难控制了,或许这也是他的敏捷之处(不要自定义,按我的做就行),可是我不喜欢再见.好了,说事

    spring boot的对于一些自定义的配置,一般都会提供application.properties和自定义xml文件的配置,log也不例外,

    我们先看看pom.xml中的配置吧!如果之前有添加

    1.  
      <dependency>
    2.  
      <groupId>org.springframework.boot</groupId>
    3.  
      <artifactId>spring-boot-starter</artifactId>
    4.  
      </dependency>

    这里可以不同添加了,因为里面已经包含
    1.  
      <dependency>
    2.  
      <groupId>org.springframework.boot</groupId>
    3.  
      <artifactId>spring-boot-starter-logging</artifactId>
    4.  
      </dependency>
    没有的就加上吧!二选一皆可!

    接下来我们先看看application.properties方式的配置吧,

    1.  
      #日志相关配置
    2.  
      logging.level.root=INFO
    3.  
      logging.level.org.springframework.web=DEBUG
    4.  
      logging.level.org.hibernate=ERROR
    5.  
      logging.path=/home/_xyy_/output/SpringBootDemo/logs
    6.  
      #logging.file=demo.log
    讲解:logging.level.root相当于以往spring配置log4j.xml中的root级别

    logging.org.springFramework.web具体服务的日志级别

    logging.path:日志的输出路径

    logging.file:输出的日志文件

    注(大坑):

    1:logging.path和logging.file不可以同时配置,同时配置也只有logging.file起效

    2:配置logging.path将会在指定文件夹下面生成spring.log文件,文件名字无法控制

    3:配置logging.file,如果只是文件名如:demo.log只会在项目的根目录下生成指定文件名的日志文件,,如果想控制日志路径,可以选择完整路径

    如:E:\demo\demo.log

    接下来看看自定义配置文件,这个就要方便很多了,还是喜欢自定义配置文件的方式

    在src/main/resources下面新建文件logback.xml这个也是spring boot默认的配置文件名,

    如果需要自定义文件名,如:logback-test.xml需要在application.properties添加配置

    logging.config=classpath:logback-test.xml
    spring boot默认载入的相关配置文件,详见jar包;spring-boot-1.*.*.RELEASE.jar下面

    org/springframework/boot/logging/logback/

    详细文件:

    base.xml      //基础包,引用了下面所有的配置文件

    console-appender.xml    //控制台输出配置

    defaults.xml                      //默认的日志文件配置

    file-appender.xml            //文件输出配置

    logback.xml详细代码:

    1.  
      <?xml version="1.0" encoding="UTF-8"?>
    2.  
      <configuration>
    3.  
      <include resource="org/springframework/boot/logging/logback/defaults.xml" />
    4.  
      <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    5.  
      <encoder>
    6.  
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg %n</pattern>
    7.  
      <charset>UTF-8</charset>
    8.  
      </encoder>
    9.  
      </appender>
    10.  
      <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    11.  
      <file>/home/_xyy_/output/SpringBootDemo/logs/stdout.log</file>
    12.  
      <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
    13.  
      <!-- daily rollover 保存历史记录到这个文件夹一日起为后缀 -->
    14.  
      <fileNamePattern>/home/_xyy_/output/SpringBootDemo/logs/stdout.log.%d{yyyy-MM-dd}.log</fileNamePattern>
    15.  
      <!-- keep 30 days' worth of history -->
    16.  
      <maxHistory>30</maxHistory>
    17.  
      </rollingPolicy>
    18.  
      <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
    19.  
      <maxFileSize>10MB</maxFileSize>
    20.  
      </triggeringPolicy>
    21.  
      <encoder>
    22.  
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg %n</pattern>
    23.  
      <charset>UTF-8</charset> <!-- 此处设置字符集 -->
    24.  
      </encoder>
    25.  
      </appender>
    26.  
      <root level="INFO">
    27.  
      <appender-ref ref="CONSOLE"></appender-ref>
    28.  
      <appender-ref ref="FILE"></appender-ref>
    29.  
      </root>
    30.  
      </configuration>

    对spring整合slf4j的同学应该不会陌生吧.再见...讲的有点粗糙,反正我不喜欢用,一路走来,大坑小坑无数.自己记录下,有需要完善的地方还希望大伙留言提出!微笑

     
     
     
     
    代码中写日志:
     
    private static Logger log= LoggerFactory.getLogger(QuartzJob.class);


      log.info("ceshia ");
  • 相关阅读:
    web服务之NginX介绍
    LVS介绍以及工作模式案例
    sersync 实现实时数据同步
    Java高并发20-并发包中锁原理解析(二)
    Java高并发19-并发包中锁原理解析(一)
    从零开始学VUE之VueRouter(导航守卫)
    从零开始学VUE之VueRouter(传递参数)
    从零开始学VUE之VueRouter(嵌套路由)
    从零开始学VUE之VueRouter(路由懒加载)
    从零开始学VUE之VueRouter(动态路由)
  • 原文地址:https://www.cnblogs.com/suizhikuo/p/9628761.html
Copyright © 2011-2022 走看看