关键词:
一、日志框架
1.无论在什么系统,日志框架都是一个重要角色,所以理解和用好日志框架是相当重要的;像JDBC一样,日志框架分为接口层的门面和具体的实现组成。
2.市面上的产品:
2.1门面:SLF4J(Simple Loggin Facade for Java)、JCL(Jakarta Common Loggin)、jboss-logging
2.2具体实现:Log4j->Logback、Log4j2、JUL(java.util.loging)
其中SLF4J、Log4j->Logback都是出自同一个作者,兼容自然是最好,Logback可以说是Log4j的升级版,而Apache的Log4j2兼容性并不友好(需要引入中间层),其它产品几乎是很少用了,
所以现在SLF4J+Logback是主流组合,Springboot正是默认是使用了这套日志框架(spring底层默认使用JCL+Log4J)。
二、springboot使用日志框架
创建springboot项目时自动帮我们引入了SLF4J+Logback,使用起来非常简单,小试牛刀:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import com.example.log.DefLoggin;
@SpringBootApplication
public class SpringBootPropertiesApplication
public static void main(String[] args)
SpringApplication.run(SpringBootPropertiesApplication.class, args);
Logger logger = LoggerFactory.getLogger(DefLoggin.class);
logger.trace("1.追踪");
logger.debug("2.调试");
logger.info("3.信息");
logger.warn("4。警告");
logger.error("5.错误");
输出(默认知道INFO级别):
2019-04-25 22:32:34.611 INFO 6696 --- [ main] c.e.d.SpringBootPropertiesApplication : 3.信息
2019-04-25 22:32:34.612 WARN 6696 --- [ main] c.e.d.SpringBootPropertiesApplication : 4。警告
2019-04-25 22:32:34.612 ERROR 6696 --- [ main] c.e.d.SpringBootPropertiesApplication : 5.错误
日志输出级别:
- Log Level:
ERROR
,WARN
,INFO
,DEBUG
, orTRACE
.(官方文档)
当然我们可以通过配置文件控制输出级别以及更多其它常用设置。
三、日志框架常用配置
#logging.level.com.example.demo=ERROR #logging.path= # 不指定路径在当前项目下生成springboot.log日志 # 可以指定完整的路径; #logging.file=G:/springboot.log # 在当前磁盘的根路径下创建spring文件夹和里面的log文件夹;使用 spring.log 作为默认文件 logging.path=/spring/log # 在控制台输出的日志的格式 logging.pattern.console=%dyyyy-MM-dd [%thread] %-5level %logger50 - %msg%n # 指定文件中日志输出的格式 logging.pattern.file=%dyyyy-MM-dd === [%thread] === %-5level === %logger50 ==== %msg%n
logging.path | Example | Description | |
---|---|---|---|
(none) | (none) | 只在控制台输出 | |
指定文件名 | (none) | my.log | 输出日志到my.log文件 |
(none) | 指定目录 | /var/log | 输出到指定目录的 spring.log 文件中 |
四、日志框架的配置文件
一般我们会自定配置文件,覆盖默认文件的部分属性。
Customization | |
---|---|
Logback | logback-spring.xml , logback-spring.groovy , logback.xml or logback.groovy |
Log4j2 | log4j2-spring.xml or log4j2.xml |
JDK (Java Util Logging) |
1.logback.xml,对应logback框架默认配置文件名,直接被日志框架识别使用;
2.logback-spring.xml,先由springboot加载解析,再给日志框架使用,可使用高级功能Profile
<layout class="ch.qos.logback.classic.PatternLayout">
<springProfile name="dev">
<pattern>%dyyyy-MM-dd HH:mm:ss.SSS ----> [%thread] ---> %-5level %logger50 - %msg%n</pattern>
</springProfile>
<springProfile name="!dev">
<pattern>%dyyyy-MM-dd HH:mm:ss.SSS ==== [%thread] ==== %-5level %logger50 - %msg%n</pattern>
</springProfile>
</layout>
在主配置文件application.properties中
spring.profiles.active=dev控制使用哪个格式。
springboot2-日志(代码片段)
springboot2-日志一、日志框架的选择1.供选择的部分框架二、SLF4J使用1.如何在系统中使用SLF4J2.调用代码示例:3.图示:4.如何统一日志记录三、SpringBoot日志关系1.父类2.底层实现3.底层依赖关系4.小结5.引入其他框架6.只需排... 查看详情
java日志框架--springboot中的日志使用(代码片段)
1.SpringBoot中的日志使用springboot框架在企业中的使用越来越普遍,springboot日志也是开发中常用的日志系统。springboot默认就是使用SLF4J作为日志门面,logback作为日志实现来记录日志。不懂日志框架和日志门面的请查看这篇... 查看详情
java日志框架--springboot中的日志使用(代码片段)
1.SpringBoot中的日志使用springboot框架在企业中的使用越来越普遍,springboot日志也是开发中常用的日志系统。springboot默认就是使用SLF4J作为日志门面,logback作为日志实现来记录日志。不懂日志框课和日志门面的请查看这篇... 查看详情
tlog日志框架springboot项目集成与扩展(代码片段)
目录前言一、TLOG开源组件集成1.maven引入2.日志文件logback-spring.xml修改二、TLOG扩展开发自己的starter1.项目层级2.扩展点:1.打印请求url2.打印响应日志a.打印请求日志中的url实现RequestBodyAdvice b.打印响应日志实现ResponseBodyAdvice c... 查看详情
springboot应用回顾(代码片段)
Springboot应用回顾1.SpringBoot应用回顾1.1约定优于配置1.2SpringBoot概念1.2.1什么是SpringBoot1.2.2SpringBoot主要特性1.3SpringBoot案例实现1.3.1案例实现1.3.2疑问1.4热部署1.4.1热部署实现演示1.4.2热部署原理分析1.4.3排除资源1.5全局配置文件1.5.1全... 查看详情
重学springboot系列之日志框架与全局日志管理(代码片段)
重学SpringBoot系列之日志框架与全局日志管理日志框架的体系结构五花八门的日志工具包日志框架日志门面日志门面存在的意义日志框架选型日志级别常见术语概念解析logback日志框架配置application配置文件实现日志配置日志格式... 查看详情
springboot----日志框架和配置(代码片段)
...起使用slf4j进行输出如何让系统中所有日志统一使用slf4jSpringBoot日志关系日志使用1.springBoot默认已经帮我们配置了日志配置关于使用logger.trace()里面传入字符串爆红问题=== 查看详情
springboot使用日志(代码片段)
...ingLog4j、JUL、Log4j2、Logback日志门面:SLF4J日志实现:LogbackSpringBoot:底层是Spring框架,Spring框架默认是用JCL;SpringBoot选用SLF4J和Logback.2、SLF4J使用以后开发的时候,日志记录。日志记录方法的调用,不应直接调用日志的实现类,而... 查看详情
浅谈springboot底层日志文件依赖关系及日志使用(代码片段)
浅谈SpringBoot底层日志文件依赖关系及日志使用1、常见的日志框架2、日志抽象和日志实现3、如何在系统中使用slf4j?([slf4j官方用户指导手册](http://www.slf4j.org/manual.html))4、slf4j与常用日志实现类的整合框架图5、Bridgi... 查看详情
springboot.06.springboot日志管理(代码片段)
SpringBoot.06.SpringBoot日志管理SpringBoot日志介绍概念日志的级别日志的分类SpringBoot日志基本使用1.新建Module2.项目配置3.配置日志SpringBoot日志切割1.application.yml2.application-dev.yml3.logback-dev.xml4.测试SpringBoot日志介绍概念在SpringBoot框架中... 查看详情
springboot.06.springboot日志管理(代码片段)
SpringBoot.06.SpringBoot日志管理SpringBoot日志介绍概念日志的级别日志的分类SpringBoot日志基本使用1.新建Module2.项目配置3.配置日志SpringBoot日志切割1.application.yml2.application-dev.yml3.logback-dev.xml4.测试SpringBoot日志介绍概念在SpringBoot框架中... 查看详情
springboot学习:第二天(代码片段)
三、日志1、日志框架小张;开发一个大型系统; 1、System.out.println("");前期将关键数据打印在控制台;去掉?写在一个文件? 2、后来框架来记录系统的一些运行时信息;日志框架;zhanglogging.jar; 3、再后来加高大上... 查看详情
springboot创建和使用(代码片段)
目录什么是SpringBootSpringBoot的优点SpringBoot项目的创建1、使用idea创建2、项目目录介绍和运行 SpringBoot配置文件 1、配置文件2、配置文件的格式3、properties3.1、properties基本语法 3.2、读取配置文件 3.3、缺点4、yml4.1、优点4.2、yml基... 查看详情
007日志整合与lombok的使用(代码片段)
一.概述 这一部分我们用比较简单的方式进行说明,springboot使用logback来完成日志的输出.二.日志框架的的问题 在java之中,日志框架的使用实际上是比较混乱的,最终出现了sl4j,这个仅仅是一个门面接口包.我们如果想使用,就... 查看详情
springboot整合+logback日志配置(代码片段)
本次演示的代码结构如下,基于maven,整合SpringBoot、Spring、Mybaits的SSM框架。同时测试logback日志框架的使用及配置。1.创建maven工程,修改pom.xml文件<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi= 查看详情
springboot2.x整合slf4j+logback日志框架(代码片段)
目录1、Slf4j及Logback简介2、日志级别3、maven依赖3.1springboot2maven配置文件3.2普通maven项目的配置文件4、logback、springboot配置说明4.1 logback.xml 和logback-spring.xml的区别4.2logback.xml配置文件的加载机制4.3SpringBoot结合logback配置说明4.3.1logb... 查看详情
日志抽取框架flume简介与安装配置(代码片段)
...e是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能... 查看详情
springboot日志/页面处理实体类构建后台管理(代码片段)
springboot日志/页面处理、实体类构建、后台管理一、配置文件的编写1.配置文件2.导入依赖二、日志框架处理1.默认配置2.个性配置3.自动生成的日志文件三、页面处理1.控制器2.配置错误友好页面四、实体类构建1.创建持久层实体类... 查看详情