springboot中——Logback介绍

server/2024/12/22 23:02:36/

程序中的日志,是用来记录应用程序的运行信息、状态信息、错误信息等。

Logback基本使用

springboot的依赖自动传递了logback的依赖,所以不用再引入依赖

之后在resources文件下创建logback.xml文件,写入

<?xml version="1.0" encoding="UTF-8"?>  
<configuration>  <!-- 控制台输出 -->  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">  <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">  <!-- 一条记录输出格式:%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n -->  <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>  </encoder>  </appender>  <!-- 系统文件输出 -->  <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">  <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">  <!-- 日志文件的命名规则 -->  <FileNamePattern>/tlias/%d{yyyy-MM-dd}-%i.log</FileNamePattern>  <!-- 最多保留的历史文件数量 -->  <MaxHistory>30</MaxHistory>  <!-- 最大文件大小 -->  <maxFileSize>10MB</maxFileSize>  </rollingPolicy>  <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">  <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>  </encoder>  </appender>  <root level="debug">  <appender-ref ref="STDOUT" />  <appender-ref ref="FILE" />  </root>  
</configuration>

 下面是一个具体的日志使用方法

package com.managerweb;  // 下面就导这些包
import ch.qos.logback.classic.Logger;  
import org.junit.jupiter.api.Test;  
import org.slf4j.LoggerFactory;  public class testlogback {  // 创建日志记录器  private static final Logger log = (Logger) LoggerFactory.getLogger(testlogback.class);  @Test  public void testLog() {  // 输出开始计数的调试信息  log.debug("开始计数...");  int sum = 0; // 初始化总和  // 定义一个整数数组  int[] nums = {1, 5, 3, 2, 1, 4, 5, 4, 6, 7, 4, 34, 2, 23};  // 遍历数组,计算总和  for (int num : nums) {  sum += num; // 累加每个数字  }  // 输出计算结果的信息  log.info("计数结果为:" + sum);  // 输出结束计数的调试信息  log.debug("结束计数...");  }  
}

.xml文件的详细配置说明

配置文件名:logback.xml
该配置文件是对Logback日志框架输出的日志进行控制的,可以来配置输出的格式、位置及日志开关等。
常用的两种输出日志的位置:控制台、系统文件

<!-- 控制台输出 --><appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">...</appender>
<!-- 系统文件输出 --><appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">...</appender>

开启日志 (ALL),关闭日志 (OFF)

<root level="ALL">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>

除了all和off以外,还可以填入下面的日志级别里的关键词(大于等于配置的日志级别的日志才会输出) 

 将日志输出到系统文件的路径配置

<FileNamePattern>标签里写日志文件的存放位置,一般的格式如下

<!-- 日志文件的命名规则 -->
<FileNamePattern>D:/idea/javacode/%d{yyyy-MM-dd}-%i.log</FileNamePattern>

logback里的日志级别

日志级别指的是日志信息的类型,日志都可以分级别,常见的日志级别如下(级别由高到低)。 

日志级别说明记录方式
error错误信息log.error("...")
warn警告信息,记录潜在有害的情况log.warn("...")
info记录一般信息,描述程序运行的关键事件,如:网络连接、IO操作log.info("...")
debug调试,记录程序调试过程中的信息,实际应用中一般将其视为最低级别log.debug("...")
trace追踪,记录程序运行轨迹log.trace("...")

http://www.ppmy.cn/server/152343.html

相关文章

图形 3.3 曲面细分与几何着色器_大规模草渲染

细分后的顶点曲面细分与几何着色器 大规模草渲染 B站视频&#xff1a;图形 3.3 曲面细分与几何着色器 大规模草渲染 文章目录 细分后的顶点曲面细分与几何着色器 大规模草渲染着色器执行顺序曲面细分着色器概述曲线和曲面相关概念输入与输出总体流程Hull Shader常量外壳着色器…

云计算赋能:TSP 问题求解与创新定价机制的全景剖析

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;编程探索专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年12月18日14点02分 神秘男子影, 秘而不宣藏。 泣意深不见, 男子自持重, 子夜独自沉。 论文源地址&#xff1a; Aspiringco…

基于Web的病历管理系统

一、系统背景与意义 随着医疗技术的不断进步和患者数量的不断增加&#xff0c;传统的纸质病历管理方式已经无法满足现代医疗机构的需求。纸质病历存在易丢失、难查询、难共享等问题&#xff0c;而基于Web的病历管理系统则能够很好地解决这些问题。通过该系统&#xff0c;医疗机…

【ELK】Filebeat采集Docker容器日志

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 介绍filebeat是如何工作的 使用部署filebeat 介绍 Filebeat 是一个用于转发和集中日志数据的轻量级传送器。 Filebeat 作为agent安装在服务器上&#xff0c;监视指…

【Mars3d】设置backgroundImage、map.scene.skyBox、backgroundImage来回切换

相关链接&#xff1a; http://mars3d.cn/editor-vue.html?keyex_1_2_1&idmap/other/backgroundImg 实现代码&#xff1a; export function show1() {map.setOptions({scene: {backgroundType: "image",backgroundImage: "url(//data.mars3d.cn/img/busin…

C# 从控制台应用程序入门

总目录 前言 从创建并运行第一个控制台应用程序&#xff0c;快速入门C#。 一、新建一个控制台应用程序 控制台应用程序是C# 入门时&#xff0c;学习基础语法的最佳应用程序。 打开VS2022&#xff0c;选择【创建新项目】 搜索【控制台】&#xff0c;选择控制台应用(.NET Framew…

深入理解STL list erase

1、list erase后&#xff0c;当前的迭代器失效&#xff0c;返回指向下一个节点的迭代器 #include<list> #include<iostream> #include<vector> using namespace std;int main() {list<int> ls;ls.push_back(1);ls.push_back(2);ls.push_back(3);list&…

STM32-笔记4-按键点亮led

1、复制03项目流水灯&#xff0c;重命名改成05项目&#xff0c;05-按键控制翻转灯的状态 在BSP文件夹里新建key文件夹&#xff0c;在该文件夹里面&#xff0c;新建两个key.c和key.h文件 2、打开工程文件-加载文件 在品和魔术棒里面把刚才新建的key文件夹里面的.c 和.h文件加载…