Spring boot2.0 日志集成方法分享(1)
作者:剑圣无痕? 发布时间:2023-05-12 20:10:25
前言:
项目开发中日志是不可缺少的一部分,通过日志能够定位和分析事故原因。目前流行日志框架包含了log4j、log4j2、logback等,另外 slf4j
(Simple Logging Facade for Java) 则是一个日志门面框架,提供了日志系统中常用的接口,logback 和 log4j 则对slf4j 进行了实现。本文将讲述spring boot 中如何使用logback+slf4j实现日志。
Java应用中,日志一般分为以下5个级别:
ERROR 错误信息
WARN 警告信息
INFO 一般信息
DEBUG 调试信息
TRACE 跟踪信息
Spring Boot
使用Apache
的Commons Logging
作为内部的日志框架,其仅仅是一个日志接口,在实际应用中需要为该接口来指定相应的日志实现。
SpringBt默认的日志实现是Java Util Logging
,是JDK自带的日志包,此外SpringBt当然也支持Log4J、Logback这类很流行的日志实现。
1.基本引用
maven
中添加spring-boot-starter-logging
<<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</dependency>
实际开发中无需添加此依赖,只需要引用spring-boot-starter-web
即可,因为spring-boot-starter-web
已经添加了spring-boot-starter-logging依赖。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
2.基础配置
默认情况下Spring Boot
将日志输出到控制台,不会写到日志文件。如果需要写入日志文件,则需在application.yml中设置logging.file属性。
logging:
level:
com.test: info
file:
name: /log/test.log
说明:name:日志文件的路径,level:日志级别。
3.基本使用
logger.info("this is info logger"); //记录info级别日志
logger.debug("this is info logger");//记录debug级别日志
logger.error("this is info logger");//记录error级别日志
String str="ac";
logger.error("this is info logger param {}",str);//通过占位符输出变量
来源:https://juejin.cn/post/7073268847175794696
猜你喜欢
- 概述什么是动态编程?动态编程解决什么问题?Java中如何使用?什么原理?如何改进?(需要我们一起探索,由于自己也是比较菜,一般深入不到这个程
- 一.关于使用Mybatisplus自带的selectById和insert方法时的一些问题1.selectById的问题(1).表的主键列名
- 假设目录结构是maven标准结构-src-target-test.jar(你需要更新的jar包)package com.foo.common
- makeCertPic.javapackage pic;import java.awt.Color;import java.awt.Font
- 在编写ui界面时因为手机分辨率大小不同,所以展现出来的效果也是不同的,这个时候就需要考虑适配器,让根据手机分辨率自动适配相应尺寸来展示界面,
- 微服务feign调用添加token1.一般情况是这么配置的具体的怎么调用就不说了 如下配置,就可以在请求头中添加需要的请求头信息。packa
- Class.forName(xxx.xx.xx) 返回的是一个类一.首先你要明白在java里面任何class都要装载在虚拟机上才能运行。1.
- 本文实例为大家分享了Java实现简单员工管理系统的具体代码,供大家参考,具体内容如下代码如下:import java.util.*;publ
- Java 分割字符串java.lang.String 的 split() 方法, JDK 1.4 or laterpublic
- 面试题1:说一下你对ReentrantLock的理解?ReentrantLock是JDK1.5引入的,它拥有与synchronized相同的
- mybatis-plus自动配置mapper.xml与java接口映射本来没有mybatis-plus的话,这个工作是通过mybatis-s
- 一.以springboot为例,建立代码1.IExecCommandServer:public interface IExecCommand
- 一、什么是热部署?热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用。二、什么是SpringBoot热部署?SpringBoot
- 下面是我自己收集整理的2017年Java岗位的面试题,可以用它来好好准备面试。一、Java基础1. String类为什么是final的。2.
- 这篇文章主要介绍了如何使用两个栈实现队列Java,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以
- 最近在开发的过程当中,对于已有的代码,想将相关类绘制成UML类图,虽然现在有很多UML类图的优秀软件,比如ProcessOn(可视化编辑)、
- 本文提供了基于MD5加密16位和32位的方法,具体内容如下import java.io.IOException;import java.ma
- 近日,开发者头条上分享了一篇“小米java第二轮面经”,有很多的java程序员表示非常有兴趣。下面就和各位分享小米java第二轮面经:0、谈
- maven 常见命令配置maven常用命令#创建项目 -D设置参数mvn archetype:generate -DgroupId=cn.d
- Java 本身就自带 JS 引擎,自从 Java 1.6 开始就支持了,愈来愈好。我对 js 比较熟悉,因此有个大胆的想法,为什么不用自带