当前位置: 首页 > web >正文

初识日志技术

Logback快速入门

准备工作:引入logback的依赖(springboot项目中该依赖已传递)、配置文件logback.xml.

记录日志:定义日志记录对象Logger,记录日志。

Logback配置文件详解

配置文件名:logback.xml

该配置文件是对Logback日志框架输出的日志进行控制的,可以来配置输出的格式、位置及日志开

关等常用的两种输出日志的位置:控制台、系统文件

<?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 表示日期,%thread 表示线程名,%-5level表示级别从左显示5个字符宽度,%logger显示日志记录器的名称, %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"><!-- 日志文件输出的文件名, %i表示序号 --><FileNamePattern>D:/tlias-%d{yyyy-MM-dd}-%i.log</FileNamePattern><!-- 最多保留的历史日志文件数量 --><MaxHistory>30</MaxHistory><!-- 最大文件大小,超过这个大小会触发滚动到新文件,默认为 10MB --><maxFileSize>10MB</maxFileSize></rollingPolicy><encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"><!--格式化输出:%d 表示日期,%thread 表示线程名,%-5level表示级别从左显示5个字符宽度,%msg表示日志消息,%n表示换行符 --><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50}-%msg%n</pattern></encoder></appender><!-- 日志输出级别 --><root level="ALL"><appender-ref ref="STDOUT" /><appender-ref ref="FILE" /></root>
</configuration>

Logback日志级别

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

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

可以在配置文件中,灵活的控制输出那些类型的日志。(大于等于配置的日志级别的日志才会输出)

http://www.xdnf.cn/news/3558.html

相关文章:

  • 当LLM遇上Agent:AI三大流派的“复仇者联盟”
  • NVIDIA Omniverse在数字孪生中的算力消耗模型构建方法
  • Python智能体开发
  • LeetCode[102]二叉树的层序遍历
  • 走进AI的奇妙世界:探索历史、革命与未来机遇
  • Mybatis中的一级二级缓存扫盲
  • 如何使用模块
  • [FPGA Video] AXI4-Stream Remapper
  • vue3+ts项目 配置vue-router
  • TS 安装
  • 仿腾讯会议——注册登录实现
  • AI算法可视化:如何用Matplotlib与Seaborn解释模型?
  • Bootstrap(自助法)​​:无需假设分布的统计推断工具
  • 「Mac畅玩AIGC与多模态13」开发篇09 - 基于多插件协同开发智能体应用(天气+名言查询助手)
  • DeepSeek实战--各版本对比
  • 【AI科技】AMD ROCm 6.4 新功能:突破性推理、即插即用容器和模块化部署,可在 AMD Instinct GPU 上实现可扩展 AI
  • [原创](现代Delphi 12指南):[macOS 64bit App开发]: [2]如何使用跨平台消息框?
  • 低代码/AI是否会取代前端开发?
  • C++之类和对象基础
  • 开启 Spring AI 之旅:从入门到实战
  • 【c++】【STL】priority_queue详解
  • 网络原理 - 13(HTTP/HTTPS - 4 - HTTPS)
  • 敏感词 v0.25.0 新特性之 wordCheck 策略支持用户自定义
  • Linux52 运行百度网盘 解决故障无法访问repo nosandbox 未解决:疑似libstdc++版本低导致无法运行baidu网盘
  • 兰亭妙微分享:B 端设计如何实现体验跃迁
  • [吾爱出品] 网文提取精灵_4.0
  • 2.4 GHz频段的11个信道通过 5 MHz中心频率间隔 实现覆盖
  • 开闭原则(OCP)
  • Qt/C++开发监控GB28181系统/云台控制/获取预置位信息/添加删除调用预置位
  • 为美好的XCPC献上典题 ABC359 G - Sum of Tree Distance(根号分治)