原文地址: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 ");

spring boot整合slf4j-log日志的更多相关文章

  1. spring boot使用slf4j输出日志

    spring boot使用slf4j输出日志 https://blog.csdn.net/qq442270636/article/details/79406346 Spring Boot SLF4J日 ...

  2. Spring Boot 整合 slf4j+log4j2 实现日志管理

    背景 Java 中比较常用的日志框架: log4j(Log for Java):Apache 的一个开源项目,七种日志级别:OFF.FATAL.ERROR.WARN.INFO.DEBUG.TRACE ...

  3. Spring Boot 整合 slf4j+log4j 实现日志管理

    一:首先新建一个jar项目,如下图: 二:添加log4j的依赖,如下pom.xml文件: <project xmlns="http://maven.apache.org/POM/4.0 ...

  4. Spring Kafka和Spring Boot整合实现消息发送与消费简单案例

    本文主要分享下Spring Boot和Spring Kafka如何配置整合,实现发送和接收来自Spring Kafka的消息. 先前我已经分享了Kafka的基本介绍与集群环境搭建方法.关于Kafka的 ...

  5. RabbitMQ使用及与spring boot整合

    1.MQ 消息队列(Message Queue,简称MQ)——应用程序和应用程序之间的通信方法 应用:不同进程Process/线程Thread之间通信 比较流行的中间件: ActiveMQ Rabbi ...

  6. Spring Boot 整合 Dubbo和Zookeeper

    Spring Boot 整合 Dubbo和Zookeeper Spring Boot 整合 Dubbo和Zookeeper 环境介绍 Zookeeper 安装 启动 Dubbo admin 搭建 创建 ...

  7. 太妙了!Spring boot 整合 Mybatis Druid,还能配置监控?

    Spring boot 整合 Mybatis Druid并配置监控 添加依赖 <!--druid--> <dependency> <groupId>com.alib ...

  8. spring boot整合Hadoop

    最近需要用spring boot + mybatis整合hadoop,其中也有碰到一些坑,记录下来方便后面的人少走些弯路. 背景呢是因为需要在 web 中上传文件到 hdfs ,所以需要在spring ...

  9. Spring Boot系列一:默认日志logback配置解析

    前言 今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的,你呢 如何引入日志? 日志输出格式以及输出方式如何配置? 代码中如何使用? 正文 Sp ...

随机推荐

  1. 系统管理员常用的Linux命令

    整理Linux的一些基本系统管理命令作为备忘 ========================================================================= 查看文 ...

  2. 自己的reset.css

    复制.粘贴 /* http://www.cnblogs.com/ele-cat Reset Stylesheet v1.0.1 2018-05-08 Author: Ele-cat - http:// ...

  3. 关于XML解析中的CDATA的简单介绍

    所有 XML 文档中的文本均会被解析器解析. 只有 CDATA 区段(CDATA section)中的文本会被解析器忽略. PCDATA PCDATA 指的是被解析的字符数据(Parsed Chara ...

  4. 基于.htaccess的Web Shell工具htshells

    基于.htaccess的Web Shell工具htshells   .htaccess文件是Apache服务器的配置文件.它负责相关目录下的网页配置.一旦用户获得修改该文件的权限,就可以基于该文件构建 ...

  5. 隐马尔科夫模型(HMM)与词性标注问题

    一.马尔科夫过程: 在已知目前状态(现在)的条件下,它未来的演变(将来)不依赖于它以往的演变 (过去 ).例如森林中动物头数的变化构成——马尔可夫过程.在现实世界中,有很多过程都是马尔可夫过程,如液体 ...

  6. java 获取当前方法名

    String _thisMethodName = new Exception().getStackTrace()[0].getMethodName();// 获得当前的方法名

  7. Redis主从同步分析(转)

    一.Redis主从同步原理 1.1 Redis主从同步的过程 配置好slave服务器连接的master后,slave会建立和master的连接,然后发送sync命令.无论是第一次同步建立的连接还是连接 ...

  8. STM32 TIMER REGISTER

  9. IAR EWARM Checksum Technical Note

    IELFTOOL Checksum - Basic actions EW targets: ARM, RH850, RX, SH, STM8 EW component: General issues ...

  10. 看opengl 写代码(4) 画一个圆

    opengl 编程指南 P30 以下代码 是 用 直线 连起来 画一个圆. // circle.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" ...