Logback
日志框架
希望系统能记住某些数据是被谁操作的,比如被谁删除了?
想分析用户浏览系统的具体情况,以便挖掘用户的具体喜好?
当系统在开发或者上线后出现了bug,崩溃了,该通过什么去分析、定位bug?
用来记录程序运行过程中的信息,并可以进行永久存储。好比生活中的日记,可以记录你生活的点点滴滴。
日志技术应该具备哪些特点和优势
可以将系统执行的信息,方便的记录到指定的位置(控制台、文件中、数据库中)。
可以随时以开关的形式控制是日志的记录和取消,无需侵入到源代码中去进行修改。
Logback
因为对Commons Logging接口不满意,有人就搞了SLF4J。因为对Log4j的性能不满意,有人就搞了Logback,Logback是基于slf4j的日志规范实现的框架。
Logback日志框架分为以下模块:
logback-core: 该模块为其他两个模块提供基础代码。 (必须有)
logback-classic:完整实现了slf4j API的模块。(必须有)
logback-access 模块与 Tomcat 和 Jetty 等 Servlet 容器集成,以提供 HTTP 访问日志功能(可选模块,以后接触)
想使用Logback日志框架,至少需要在项目中整合如下三个模块:
slf4j-api:日志接口
logback-core:基础模块
logback-classic:功能模块,它完整实现了slf4j API
public static final Logger LOGGER = LoggerFactory.getLogger(“类名");
logback.xml
通过logback.xml 中的<append>标签可以设置输出位置。
通常可以设置2个日志输出位置:一个是控制台、一个是系统文件中
输出到控制台的配置标志
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
输出到系统文件的配置标志
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
1 2 3 4 5 6 7 8 9 10 11 12 13 | package com.itheima.run; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class Test12 { public static final Logger LOGGER = LoggerFactory.getLogger( "Test12.class" ); public static void main(String[] args) { LOGGER.debug( "debug............................" ); LOGGER.info( "debug............................" ); } } |
日志级别
ALL 和 OFF分别是打开、及关闭全部日志信息。
除此之外,日志级别还有: TRACE < DEBUG < INFO < WARN < ERROR ; 默认级别是DEBUG,对应其方法
作用:当在logback.xml文件中设置了某种日志级别后,系统将只输出当前级别,以及高于当前级别的日志。
具体在<root level=“INFO”>标签的level属性中设置指定系统的日志级别。
<root level=“INFO">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE" />
</root>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY