关于java:Spring-Boot-2x基础教程使用tinylog记录日志

4次阅读

共计 2479 个字符,预计需要花费 7 分钟才能阅读完成。

tinylog 简介

tinylog,与其余各种 tiny 结尾的货色一样,是一个轻量级的开源日志解决方案。它自身只蕴含两个 JAR 文件(一个用于 API,另一个用于实现),没有任何内部依赖关系。两个 JAR 文件的总大小只有 178KB。

尽管是一个轻量级级别计划,但咱们罕用的根本日志治理性能都十分齐备,它领有与其余热门日志框架相似的 API 设计、多种可配置的日志输入选项、性能方面也是十分的出彩(这是官网给出的 Benchmark)。

明天咱们就来学习一下,如何在 Spring Boot 中应用 tinylog 记录日志。

整合 tinylog

通过之前 Spring Boot 2.x 基础教程:应用 log4j2 记录日志 一文的学习,回顾一下,整合其余日志框架,是不是能够总结为这样几步:

  1. 排除 Spring Boot 默认日志框架依赖
  2. 引入要应用的日志框架依赖
  3. 退出新日志框架的配置文件

好了,咱们就按这个步骤来实战一下:

第一步:排除 Spring Boot 默认日志框架依赖

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-logging</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
</dependencies>

第二步:引入 tinylog 的依赖

<properties>
    <tinylog.version>2.4.1</tinylog.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.tinylog</groupId>
        <artifactId>tinylog-api</artifactId>
        <version>${tinylog.version}</version>
    </dependency>
    <dependency>
        <groupId>org.tinylog</groupId>
        <artifactId>tinylog-impl</artifactId>
        <version>${tinylog.version}</version>
    </dependency>
    <dependency>
        <groupId>org.tinylog</groupId>
        <artifactId>slf4j-tinylog</artifactId>
        <version>${tinylog.version}</version>
    </dependency>
    <dependency>
        <groupId>org.tinylog</groupId>
        <artifactId>jcl-tinylog</artifactId>
        <version>${tinylog.version}</version>
    </dependency>
    <dependency>
        <groupId>org.tinylog</groupId>
        <artifactId>log4j1.2-api</artifactId>
        <version>${tinylog.version}</version>
    </dependency>

</dependencies>

测试与验证

到这里,根本整合曾经实现了。咱们不焦急去对 tinylog 做具体配置,先验证下到这里是否都曾经正确。跟之前的日志整合例子一样,写个主类打印下各个级别的日志。

@Slf4j
@SpringBootApplication
public class Chapter83Application {public static void main(String[] args) {SpringApplication.run(Chapter83Application.class, args);

        log.error("Hello World");
        log.warn("Hello World");
        log.info("Hello World");
        log.debug("Hello World");
        log.trace("Hello World");
    }

}

这里用了 lombok 的@Slf4j,如果还不理解的倡议读一下这篇:Lombok:让 JAVA 代码更优雅

运行一下,从控制台能够看到输入内容如下:

通过 debug,咱们能够看到此时的 log 曾经是 TinylogLogger

第三步:退出 tinylog 的配置文件

通过上一步,咱们尽管曾经实现了整合,然而下面的格局,是你想要的吗?退出配置调整一下!

在 resources 目录下创立文件:tinylog.properties

退出上面的配置:

writer=console
writer.format={date: HH:mm:ss.SSS} {level}: {message}

从新运行测试,控制台输入是不是难看一些了

更多配置,比方:文件输入、级别管制等这里就不具体说了,大家能够查看官网文档,基本上与其余框架都是相似的,很容易配置。

好了,明天的学习就到这里!如果您学习过程中遇到困难,能够退出咱们超高品质的 Spring 技术交换群,参加交换与探讨,更好的学习与提高!更多 Spring Boot 教程能够点击中转!,欢送珍藏与转发反对!

代码示例

本文的残缺工程能够查看上面仓库中 2.x 目录下的 chapter8-3 工程:

  • Github:https://github.com/dyc87112/SpringBoot-Learning/
  • Gitee:https://gitee.com/didispace/SpringBoot-Learning/

如果您感觉本文不错,欢送 Star 反对,您的关注是我保持的能源!

欢送关注我的公众号:程序猿 DD。第一工夫理解前沿行业音讯、分享深度技术干货、获取优质学习资源

正文完
 0