程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

SpringBoot学习(二)--SpringBoot日志

发布于2021-05-29 21:49     阅读(561)     评论(0)     点赞(27)     收藏(5)


二、SpringBoot日志

一.日志框架(实现类,实现)

日志框架很多,只写了三个常用的

1、Log4j

Log4j是Apache的一个Java的日志库,通过使用Log4j,我们可以控制日志信息输送的目的地(控制台、文件、数据库等);我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。

2、Logback

Logback,一个“可靠、通用、快速而又灵活的Java日志框架”。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个改良版本。此外logback-classic完整实现SLF4J API使你可以很方便地更换成其它日志系统,如log4j或JDK14 Logging。logback-access模块与Servlet容器(如Tomcat和Jetty)集成,以提供HTTP访问日志功能。请注意,您可以在logback-core之上轻松构建自己的模块。

3、Log4j2

Apache Log4j 2是对Log4j的升级,它比其前身Log4j 1.x提供了重大改进,并提供了Logback中可用的许多改进,同时修复了Logback架构中的一些问题。

现在最优秀的Java日志框架是Log4j2,没有之一。根据官方的测试表明,在多线程环境下,Log4j2的异步日志表现更加优秀。在异步日志中,Log4j2使用独立的线程去执行I/O操作,可以极大地提升应用程序的性能。

二.日志门面(日志的抽象层,接口)

需要选择一个日志门面(一套接口),再选一个日志框架(实现日志门面的接口),才能完成日志的功能。

1、为什么需要日志门面

面向接口编程:降低耦合度。
日志实现,可能会有一些代码的优化和改动,避免影响用户在项目中的使用,使用日志门面这些统一的接口,假设在实现层代码做了更改,用户在项目中使用日志而调用的接口等等都是不会受影响的。

2、SLF4J

SLF4J,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志系统。

三.SpringBoot的日志使用

		<!-- SpringBoot 核心包 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter</artifactId>
			<!-- <exclusions> <exclusion> <artifactId>spring-boot-starter-tomcat</artifactId> 
				<groupId>org.springframework.boot</groupId> </exclusion> </exclusions> -->
		</dependency>

SpringBoot使用spring-boot-starter-logging来做日志功能

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-logging</artifactId>
      <version>2.1.1.RELEASE</version>
      <scope>compile</scope>
    </dependency>

在这里插入图片描述
SpringBoot能够自动适配所有的日志框架,但是如果要引入其他的日志框架,那么需要把默认的日志框架移排除掉(移除logback-core)

1、日志的方法和级别

日志级别:trace<debug<info<war<error,SpringBoot默认是info级别

log.trace();
log.debug();
log.info();
log.war();
log.error();

2、日志的默认配置

都不指定就只输出在控制台

1.logging.file

指定文件名称,比如spring.log,就会输出在根目录下,输出spring.log文件

2.logging.path

指定路径

3.pattern

指定控制台中输出的日志格式



所属网站分类: 技术文章 > 博客

作者:天花灯

链接:http://www.javaheidong.com/blog/article/207366/bac60c82949030880fe3/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

27 0
收藏该文
已收藏

评论内容:(最多支持255个字符)