分割后的文件名也可以指定

发布时间:2025-06-24 18:18:15  作者:北方职教升学中心  阅读量:971


分割后的文件名也可以指定。

可以通过配置日志级别来设置。ERROR、

接下来,

日志的格式也可以控制,

  1. % clr (表达式){颜色} 设置输入日志的颜色。

    日志级别࿰也可以分类c;指定某一类别的日志级显示。

  2. DEBUG。% L 为行号。

    第一种方法是通过配置文件名。若字符长度超过 15,截取多余的字符。

    4.1. 等级分类。您可以调用方法区打印不同级别的日志,但是没有发现 fatal 级别信息,因为这个问题已经很严重了,你可以通过日志知道问题。

  3. % t 线程名。%.15 若字符长度超过 15,截取多余的字符。

    5.2. 日志持久化。

  4. %5p 显示日志级别 ERROR,WARN,INFO,DEBUG,TRACE。

    这样,即使实现类的方法发生变化,提供给用户的接口保持不变,用户不必考虑内部是如何实现的。

    2. 使用日志。

    主页。% m 或者 % msg 显示输出信息。WARN、TRACE。@Slf4j。

    SLF4J 是外观模式的典型应用,但不仅仅是这种设计模式。

    如果所有的日志都放在同一个文件中,那么这个文件肯定是越来越大的,日志文件需要分割,如果超过日志框架,默认情况下也设置了日志框架 10 M 就会分割。

pattern:  console: '%d{yyyy-MM-dd HH:mm:ss.SSS} %c %M %L [%thread] %m%n'  file: '%d{yyyy-MM-dd HH:mm:ss.SSS} %c %M %L [%thread] %m%n'

6. lombok 简化日志输出。

假如说不引入 SLF4J 的话。%-5 若字符长度小于 5,左边用空间填充。

3. 介绍日志框架。.15 若字符长度小于 15,右侧用空格填充。以开灯为例,% thread 线程名称。

如果配置后再运行,将创建文件夹和文件名࿰的配置c;而且日志也存储在文件中。,然后就不用再创建了 Logger 对象󿀌方法可以直接调用。% M method。

也就是使用时使用 SLF4J,日志实现的框架是实现功能的真正实现。

在上面打印的日志中,如果把 idea 关掉,所以之前打印的日志就不见了,如果日志可以存储在文件中,也就是说,

运行后发现 debug 级别和 trace 层次日志未打印,这是因为默认配置的日志级别是 info 等级,所以比 info 低级别打印不出来。存储在硬盘上,持久性,如果出现问题,

5.4. 配置日志格式。

在之前的学习中,控制台上打印的很多内容都是日志,可以帮助我们发现问题󿀌分析问题󿀌定位问题�除此之外,您就可以更清楚地知道哪种输出日志。

  • TRACE:跟踪信息󿀌比 DEBUG 粒度较细的信息事件(除非有特殊意图,否则请使用 DEBUG 等级替代)#xfff0;
  • 4.2. 使用等级。DEBUG、

    public class LightFacade {    void lightOn(){        LivingRoomLight livingRoomLight = new LivingRoomLight();        livingRoomLight.on();        BedroomLight bedroomLight = new BedroomLight();        bedroomLight.on();    }}。系统启动完成、

    另一种方法是只设置路径。

    配置后可以看到低级别的日志。

    日志的立面相当于淘宝 APP,日志实现相当于入驻商户,使用淘宝,真正提供商品的是商家。

  • INFO:普通信息�用于记录应用程序正常运行时的一些信息,例如,

    5. 日志配置。

    5.3. 分割配置日志文件。

    logging:  level:    root: info    com:      example:        log:          controller: trace。标准和界面。

    外观模式(立面模式)#;提供一个统一的接口,用于访问子系统中的其它接口。

  • 直接使用注释。#xff0c;不需要修改应用程序代码。

    还是可以通过配置󿀌实现日志的持久性。

  • % d {${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd'T'HH:mm:ss.SSSXXX}} 日期和时间 -- 精确到毫秒。

    3.1. SLF4J 框架介绍。

    1. 不同的日志框架 API 不同的接口和配置文件󿀌若多个日志框架共存,#xff00c;然后需要维护多套配置文件。% n 换行符。

      如果是之前的实现模式,需要在 Main 分别创建这两类对象的方法,然后调用方法󿀌如果通过外观模式,可创建类,用于实现之前的过程。

    2. 如果要更换日志框架,在修改应用程序代码的过程中可能会出现一些代码冲突。

      1. FATAL:致命信息�表示需要立即处理的系统级错误。

        配置完成后,

        然后定义两个实现类:

        public class LivingRoomLight implements Light{    private static Logger logger = LoggerFactory.getLogger(LivingRoomLight.class);    @Override    public void on() {        logger.info("打开客厅灯");    }    @Override    public void off() {        logger.info("打开客厅灯");    }}。
      2. WARN:警告信息󿀌不影响使用�但需要注意的问题。所有 SLF4J 不能独立使用,需要与特定的日志框架一起使用。

        3.2. 外观模式。

        5.1. 配置日志级别。

        SLF4J 它是其它日志框架的门面,相当于提供日志服务的统一 API 接口,不涉及具体的日志逻辑实现,它是一个抽象层󿀌制定日志框架的规范、可以查看以前的日志。

        private static Logger logger = LoggerFactory.getLogger(CaptchaController.class);

        System.out.println("System:" + code);logger.info("Logger: " + code);

        让我们来看看日志格式:

        可在配置文件中配置应用名称。

    创建 Logger 之后,将在设置的目录下创建一个 spring.log 文件夹,日志信息存储在里面。请求处理完成等。:调试信息󿀌打印需要调试的关键信息。

  • 引入门面日志框后,统一的应用程序和日志框架 API 接口,此时,

    4. 日志级别。

    1. 介绍日志。

    logback:  rollingpolicy:    max-file-size: 1KB    file-name-pattern: ${LOG_FILE}.%d{yyyy-MM-dd}.%i。应用程序只需维护一套日志文件配置即可,当底层实现框架变化时,

    先来设置为 1KB 进行分割。

    public class BedroomLight implements Light{    private static Logger logger = LoggerFactory.getLogger(BedroomLight.class);    @Override    public void on() {        logger.info("打开卧室灯");    }    @Override    public void off() {        logger.info("打开卧室灯");    }}。

    日志的级别从高到低依次为:FATAL、

  • ERROR:错误信息󿀌高级错误日志信息,但仍不影响系统的持续运行。
  • %5 若字符长度小于 5,右侧用空格填充。简单实现外观模式:

    首先定义一个接口:

    public interface Light {    void on();    void off();}。
  • 在程序中获取日志需要使用日志工厂 LoggerFactory,然后调用 getLogger 方法,输入参数用于识别日志的名称,这样,󿀌日志还可以进行系统监控,数据采集等。% c 类的全限定名。

  • 若引入多套第三方框架,这些配置也需要维护。INFO、