原文地址: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. 应用Mongoose开发MongoDB(1)数据库连接

    最近因为项目,接触了MongoDB,因为是分工合作,我负责的部分主要是实现前端对数据库增删查改的需求,因此以下内容只着重于针对不同问题如何进行解决. 整个工程的最终目的是通过mongoose编写数据库 ...

  2. web前端实现本地存储

    当我们在提及web前端本地存储的时候,首先需要介绍一下本地化存储的概念和历史.本地化存储从来不是一个新奇的概念,因为web应用程序一直在追求的就是媲美甚至超越桌面应用程序.但是桌面应用程序一直优于we ...

  3. mysql存储引擎innodb、myisam区别

    MyISAM与InnoDB的区别是什么? 1. 存储结构 MyISAM:每个MyISAM在磁盘上存储成三个文件.第一个文件的名字以表的名字开始,扩展名指出文件类型..frm文件存储表定义.数据文件的扩 ...

  4. 快速沃尔什变换与k进制FWT

    这是一篇用来卖萌的文章QAQ 考虑以下三类卷积 \(C_k = \sum \limits_{i \;or\;j = k} A_i * B_j\) \(C_k = \sum \limits_{i\;an ...

  5. 【转】Asp.net实现URL重写

    [概述] URL重写就是首先获得一个进入的URL请求然后把它重新写成网站可以处理的另一个URL的过程.重写URL是非常有用的一个功能,因为它可以让你提高搜索引擎阅读和索引你的网站的能力:而且在你改变了 ...

  6. 获取设备IP地址

    腾讯的IP地址API接口地址:http://fw.qq.com/ipaddress返回的是数据格式为: 1 var IPData = new Array(“58.218.198.205″,”" ...

  7. HTML5之Javascript多线程

    Javascript执行机制      在HTML5之前,浏览器中JavaScript的运行都是以单线程的方式工作的,虽然有多种方式实现了对多线程的模拟(例如:Javascript 中的 setint ...

  8. ARM JTAG 信号 RTCK 应该如何处理?

    用户在调试内嵌可综合内核的 CPU 如 ARM7TDMI-S 时,需要通过打开仿真器的自适应时钟功能. 此时,ARM仿真器根据 RTCK 时钟信号的频率,产生可用于 CPU 内核当前时钟主频的最快的 ...

  9. windows和linux 下将tomcat注册为服务

    参考文献: tomcat注册成windows服务 背景 当前项目需要运行两个Tomcat,每次启动系统以后都要手动进入到tomcat目录执行startup.bat,非常烦,所以想将这两个tomcat直 ...

  10. EF6+Sqlite连接字符串的动态设置

    摘要 在winform中应用sqlite和ef,对于sqlite连接字串的设置,大多情况下是不想写死了,你不知道用户会将你的exe程序安装在什么位置,也不知道他的电脑盘符是什么,如果写死了,那么很有可 ...