SpringBoot 日志配置

SpringBoot 日志的配置

  • 如果不配置日志,默认配置是 base.xml
  • 配置日志 在 resource 目录下新建 logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false">
  <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
  <property name="LOG_HOME" value="./logs" />
  <!-- 控制台输出 -->
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
      <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
    </encoder>
  </appender>
  <!-- 按照每天生成日志文件 -->
  <appender name="FILE"  class="ch.qos.logback.core.rolling.RollingFileAppender">
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
      <!--日志文件输出的文件名-->
      <FileNamePattern>${LOG_HOME}/springboot-logback.log.%d{yyyy-MM-dd}.log</FileNamePattern>
      <!--日志文件保留天数-->
      <MaxHistory>30</MaxHistory>
    </rollingPolicy>
    <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
      <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
    </encoder>
    <!--日志文件最大的大小-->
    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
      <MaxFileSize>10MB</MaxFileSize>
    </triggeringPolicy>
  </appender>
  <!-- show parameters for hibernate sql 专为 Hibernate 定制 -->
  <logger name="org.hibernate.type.descriptor.sql.BasicBinder"  level="TRACE" />
  <logger name="org.hibernate.type.descriptor.sql.BasicExtractor"  level="DEBUG" />
  <logger name="org.hibernate.SQL" level="DEBUG" />
  <logger name="org.hibernate.engine.QueryParameters" level="DEBUG" />
  <logger name="org.hibernate.engine.query.HQLQueryPlan" level="DEBUG" />

  <!--myibatis log configure-->
  <logger name="com.apache.ibatis" level="TRACE"/>
  <logger name="java.sql.Connection" level="DEBUG"/>
  <logger name="java.sql.Statement" level="DEBUG"/>
  <logger name="java.sql.PreparedStatement" level="DEBUG"/>

  <!-- 日志输出级别 -->
  <root level="INFO">
    <appender-ref ref="STDOUT" />
    <appender-ref ref="FILE" />
  </root>
  <!--日志异步到数据库 -->
  <!--<appender name="DB" class="ch.qos.logback.classic.db.DBAppender">-->
  <!--&lt;!&ndash;日志异步到数据库 &ndash;&gt;-->
  <!--<connectionSource class="ch.qos.logback.core.db.DriverManagerConnectionSource">-->
  <!--&lt;!&ndash;连接池 &ndash;&gt;-->
  <!--<dataSource class="com.mchange.v2.c3p0.ComboPooledDataSource">-->
  <!--<driverClass>com.mysql.jdbc.Driver</driverClass>-->
  <!--<url>jdbc:mysql://127.0.0.1:3306/databaseName</url>-->
  <!--<user>root</user>-->
  <!--<password>root</password>-->
  <!--</dataSource>-->
  <!--</connectionSource>-->
  <!--</appender>-->
</configuration>

原文地址:https://www.cnblogs.com/makesailing/p/9607300.html

时间: 2024-08-30 09:20:41

SpringBoot 日志配置的相关文章

springboot日志配置Logback

springboot可以通过application.yml或者application.properties中配置如下属性指定日志配置 #logback日志配置xml存放路径配置logging.config=classpath:logback.xml#日志文件存储位置logging.path=/workspace/rock/jpa-test/log logback.xml日志结构 <configuration> <!-- 日志输出根配置 --> <root level=&quo

JAVAEE——SpringBoot日志篇:日志框架SLF4j、日志配置、日志使用、切换日志框架

Spring Boot 日志篇 1.日志框架(故事引入) 小张:开发一个大型系统: ? 1.System.out.println(""):将关键数据打印在控制台:去掉?写在一个文件? ? 2.框架来记录系统的一些运行时信息:日志框架 : zhanglogging.jar: ? 3.高大上的几个功能?异步模式?自动归档?xxxx? zhanglogging-good.jar? ? 4.将以前框架卸下来?换上新的框架,重新修改之前相关的API:zhanglogging-prefect.ja

Springboot 日志管理配置logback-spring.xml

几种常见的日志 Log4j:是最早的日志框架,是apach旗下的,可以单独使用,也可配合日志框架JCL使用: Log4j2:apach旗下的关于log4j的升级版: Logback:是基于slf4j接口实现的一套日志框架组件:(Logback是由log4j创始人设计的又一个开源日志组件.) JUL(java utillog):仿log4j实现的日志框架,是sun旗下的,(也就是在我们普遍使用的jdk中): Commons loggin:是一套日志接口(apache): Slf4j:也是一套日志接

SpringBoot整合+logback日志配置

本次演示的代码结构如下,基于maven,整合SpringBoot.Spring.Mybaits的SSM框架.同时测试logback日志框架的使用及配置. 1.创建maven工程,修改pom.xml文件 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="h

springBoot日志框架自动配置与原理

1.日志框架 小张:开发一个大型系统: ? 1.System.out.println(""):将关键数据打印在控制台:去掉?写在一个文件? ? 2.框架来记录系统的一些运行时信息:日志框架 : zhanglogging.jar: ? 3.高大上的几个功能?异步模式?自动归档?xxxx? zhanglogging-good.jar? ? 4.将以前框架卸下来?换上新的框架,重新修改之前相关的API:zhanglogging-prefect.jar: ? 5.JDBC---数据库驱动: ?

springboot多环境日志配置,启动时logback-test.xml文件冲突导致启动失败:openFile(null,true) call failed. java.io.FileNotFoundException

如题,在项目中用到了4个环境的日志配置文件,启动时在application.properties中指定环境,让springboot自动加载logback对应的配置文件: 每个环境的日志目录都不一样,比如sit和test环境分别是: 如果spring.profiles.active配置的是test,那么一切正常,非test环境,则启动失败.比如我现在配置spring.profiles.active=sit来启动联调环境,报错日志如下: 2020-01-10 14:32:33.579 |-ERROR

springBoot日志快速上手简单配置

默认配置 日志级别从低到高分为: TRACE < DEBUG < INFO < WARN < ERROR < FATAL. 如果设置为 INFO ,则低于 INFO 的信息都不会输出其他的依次类推 默认情况下,Spring Boot会用Logback来记录内部日志,并用INFO级别输出到控制台你不用做任何设置 从上图可以看到,日志输出内容元素具体如下: 时间日期:精确到毫秒 日志级别: 进程ID 分隔符:--- 标识实际日志的开始 线程名:方括号括起来(可能会截断控制台输出)

springboot profile 日志配置

1.简介 Spring Profiles提供了一种隔离应用程序配置部分并使其仅在特定环境中可用的方法. 任何@Component或@Configuration 可以标记@Profile以限制何时加载,如以下示例所示:(只有在profile设置为procduction的时候这个bean才会被加载) @Configuration @Profile("production") public class ProductionConfiguration { // ... } 可以使用spring

springboot 日志2

SpringBoot关于日志的官方文档 1.简述 SpringBoot官方文档关于日志的整体说明 本博客基于SpringBoot_1.3.6大家请先简单看下这篇英文的官方文档,文中有说 SpringBoot 内部日志系统使用的是 Commons Logging 并且 SpringBoot 给 JDKLogging , Log4j2(Log4j也是支持的) , Logback 都提供了默认配置,并且如果使用了 Starters ,那么默认使用 Logback .那么什么是这个这个 Starters