SpringBoot默认采用slf4j+logback 的组合形式,但也提供对JUL、log4j2、Logback提供了默认配置。

我们使用IDEA的spring初始化创建一个springboot项目后,运行一下开始方法。控制台输出的一堆如下的信息其实就是日志

在配置文件中配置日志

1.配置日志输出级别

打开测试方法,输入以下代码。

@SpringBootTest
class SpringBoot03LoggingApplicationTests {
Logger logger= LoggerFactory.getLogger(getClass());
@Test
void contextLoads() {
//下面的日志级别从低到高。
//默认输出info级别以上的日志信息,可以在配置文件中修改
//追踪运行信息
logger.trace("这是trace日志信息");
//调试信息
logger.debug("这是debug日志信息");
//自定义信息
logger.info("这是info日志信息");
//警告信息
logger.warn("这是warn日志信息");
//错误信息
logger.error("这是error日志信息");
} }

仔细观察你的控制台,发现只有info级别以上的日志,trace和debug没有显示。这个可以在配置文件中进行设置。

#修改指定包的日志输出级别为debug以上
logging.level.top.yelow=debug
#修改整个的默认级别
#logging.level.root=debug

第一个level之后是指定的包,在这个包里面的日志会输出debug级别以上的。

而第二个.root是整个项目的默认级别。不建议修改,因为级别低的日志非常多。

2.输出日志到文件

#输出日志到项目根目录下的springboot.log文件中
logging.file.name=springboot.log
#输出日志到项目所在磁盘的/springboot/log文件夹中的spring.log文件中
#logging.file.path=/springboot/log

当两种方式都存在时,采用的是file方法,所以推荐file方法,file方法也可以指定目录,只要在前面写上完整的磁盘和路径

3.修改日志输出格式

#修改控制台日志输出的格式,以下方法无法修改日志文件的输出格式
logging.pattern.console=%d{yyyy-MM-dd} [%thread] %-5level %logger{50} - %msg%n
#修改日志文件中日志的输出格式
logging.pattern.file=%d{yyyy-MM-dd HH:mm:ss.SSS} >>> [%thread] >>> %-5level >>> %logger{50} >>> %msg%n

 日志输出格式说明:
%d 输出日期时间,
%thread 输出当前线程名,
%-5level 输出日志级别,左对齐5个字符宽度
%logger{50} 输出全类名最长50个字符,超过按照句点分割
%msg 日志信息
%n 换行符

SpringBoot默认日志的使用方法及常用配置的更多相关文章

  1. 修改覆盖springboot默认日志策略logback

    目录 背景 自定义 背景 springboot初始化了日志的默认实现,只要我们在配置文件添加对应的配置即可. 比如 logging: file: logs/application-debug.log ...

  2. SpringBoot 默认日志

    默认使用的这个类 org.apache.commons.logging.Log import org.apache.commons.logging.Log; import org.apache.com ...

  3. springboot+logback日志输出企业实践(上)

    目录 1.引言 2.logback简介 3. springboot默认日志框架-logback 3.1 springboot示例工程搭建 3.2 日志输出与基本配置 3.2.1 日志默认输出 3.2. ...

  4. SpringBoot初识日志

    SpringBoot初识日志 1.市面上的日志框架: JUL.JCL.Jboss-logging.logback.log4j.log4j2.slf4j- 日志门面(日志的抽象层) 日志实现 SLF4j ...

  5. SpringBoot与日志框架2(日志内斗)

    一.SpringBoot如何引入slf4j+logback框架的呢? 在POM文件中 <dependency> <groupId>org.springframework.boo ...

  6. java框架之SpringBoot(3)-日志

    市面上的日志框架 日志抽象层 日志实现 JCL(Jakarta Commons Logging).SLF4J(Simple Logging Facade For Java).JBoss-Logging ...

  7. SpringBoot整合日志

    Java日志 日志的接口层.抽象层 日志的实现 JCL(Jakarta Commons Logging) SLF4J(Simple Logging Facade for Java) Jboss-Log ...

  8. springboot+mybatis日志显示SQL的最简单方法

    在springBoot+Mybatis日志显示SQL的执行情况的最简单方法就是在properties新增:logging.level.cn.piesat.mapper=debug 注意:其中cn.pi ...

  9. springboot的日志框架slf4j (使用logback输出日志以及使用)

    1.为什么使用logback? ——在开发中不建议使用System.out因为大量的使用会增加资源的消耗.因为使用System.out是在当前线程执行的,写入文件也是写入完毕之后才继续执行下面的程序. ...

随机推荐

  1. maven插件生成可执行jar包

    <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assem ...

  2. [Luogu] 文艺平衡树(Splay)

    题面:https://www.luogu.org/problemnew/show/P3391 题解:https://www.zybuluo.com/wsndy-xx/note/1138892

  3. 洛谷 P4933 大师

    题面 (实名推荐:本题的出题人小哥哥打球暴帅哦!(APIO/CTSC/WC的时候一起打过球w,而且大学在我隔壁喔) ) 没仔细看数据范围的时候真是摸不着头脑...还以为要 O(N^2) dp 爆锤.. ...

  4. AcWing:176. 装满的油箱(bfs + dijiskla思想)

    有N个城市(编号0.1…N-1)和M条道路,构成一张无向图. 在每个城市里边都有一个加油站,不同的加油站的单位油价不一样. 现在你需要回答不超过100个问题,在每个问题中,请计算出一架油箱容量为C的车 ...

  5. docker: Error response from daemon: OCI runtime create failed: container_linux.go:345: starting container process caused "exec: \"ping\": executable file not found in $PATH": unknown.

    docker: Error response from daemon: OCI runtime create failed: container_linux.go:345: starting cont ...

  6. golang中遍历汇总

    直接上例子: 例子1: package main import( "fmt" ) func main(){ a := map[string]string{ "alice& ...

  7. Linux设备驱动程序 之 重要数据结构

    文件对象 文件对象是进程已经打开文件描述符的内存中的表示,单个文件可能有多个表示打开文件描述符的file结构: struct file { union { struct llist_node fu_l ...

  8. IDEA + tomcat 远程调试(JPDA)

    一.修改 tomcat 配置,启动远程调试 Linux(bin\catalina.sh) # 将 localhost 改为 0.0.0.0 if [ -z "$JPDA_ADDRESS&qu ...

  9. linux 下执行py问题提示cannot import name request

    最近因为工作需要,需要在linux上去执行python代码,但是在执行的时候提示cannot import name request,我以为是导入有问题,然后我就把代码放到与包一个目录下,执行py问题 ...

  10. [spring boot]idea中实现热部署的方法

    发生了任何修改之后,必须关闭后再启动Application类才能够生效,显得略微麻烦. Springboot提供了热部署的方式,当发现任何类发生了改变,马上通过JVM类加载的方式,加载最新的类到虚拟机 ...