springboot / 若依 日志说明

若依日志采用的是springboot的通用日志记录功能

SLF4J + Logback

Spring Boot,自动引入 spring-boot-starter-logging(即 SLF4J + Logback)

  • 默认加载 classpath:logback-spring.xml(推荐)或 logback.xml
  • 支持在 XML 中使用 Spring 的 和 ${} 占位符
  • 可通过 application.yml 快速设置日志级别:

默认加载 classpath:logback-spring.xml(推荐)或 logback.xml

支持在 XML 中使用 Spring 的 和 ${} 占位符

可通过 application.yml 快速设置日志级别:

SLF4J 是日志"门面"(接口规范),Logback 是 SLF4J 的"原生实现"(具体实现)。

logback.xml

logback.xml 是日志的基本配置文件, 目录位置\src\main\resources

如果没有看见日志记录需要手动改下存储路径, window 可以改成D:/RuoYi-Vue/ruoyi-admin/src/main/resources/logs

使用

在若依框架里

java 复制代码
public class BaseController
{
    protected final Logger logger = LoggerFactory.getLogger(this.getClass());
}
java 复制代码
logger.error(t.getMessage(), t);

继承此类的方法就可以直接使用

或者 在需要使用的类中

java 复制代码
public class Threads
{
    private static final Logger logger = LoggerFactory.getLogger(Threads.class);
    }

log方法

在 SLF4J(配合 Logback 使用)中,Logger 接口(即你代码中的 log 对象)提供了 6 个核心日志级别方法,用于记录不同严重程度的日志信息。

这些方法都支持 带参数的占位符格式化(推荐方式),避免不必要的字符串拼接开销。

6 个标准日志方法(按严重程度从低到高)

方法 用途 典型场景
log.trace(String msg) 追踪:最详细的信息,通常只在开发/调试时开启 进入方法、变量值、循环细节等
log.debug(String msg) 调试:用于调试程序,比 trace 稍粗粒度 SQL 语句、中间计算结果、分支判断
log.info(String msg) 信息:关键业务流程、系统启动、重要状态变更 应用启动完成、用户登录、订单创建
log.warn(String msg) 警告:潜在问题,但不影响系统运行 配置缺失使用默认值、重试操作、非预期但可恢复的状态
log.error(String msg) 错误:发生错误,可能影响功能,需关注 业务异常、外部服务调用失败、数据校验失败
log.error(String msg, Throwable t) 错误 + 异常堆栈 捕获异常并记录完整堆栈信息

控制台默认输出 INFO 及以上(即 info, warn, error)

debug: true(在 application.yml 中设置)会开启 DEBUG 级别

trace: true 会开启 TRACE 级别

推荐用法:使用 {} 占位符(避免字符串拼接)

java 复制代码
// ✅ 推荐:只有当日志级别启用时才格式化
log.debug("User {} logged in from IP {}", username, ip);
log.info("Order {} created with amount {}", orderId, amount);
log.warn("Config file {} not found, using default", configFile);
log.error("Failed to send email to {}", email, exception);
相关推荐
好家伙VCC2 小时前
# ARCore+ Kotlin 实战:打造沉浸式增强现实交互应用在
java·python·kotlin·ar·交互
zore_c2 小时前
【C++】C++——类的默认成员函数(构造、析构、拷贝构造函数)
java·c语言·c++·笔记·算法·排序算法
我登哥MVP2 小时前
【SpringMVC笔记】 - 4 - 三个域对象
java·spring boot·spring·servlet·tomcat·maven·intellij-idea
Seven972 小时前
【从0到1构建一个ClaudeAgent】协作-Agent团队
java
郝学胜-神的一滴2 小时前
[系统设计] 新鲜事系统:写扩散与读扩散的实现与对比
java·设计模式·php·软件构建·需求分析·软件设计·系统设计
疯狂成瘾者3 小时前
LangChain4j ApacheTikaDocumentParser:多格式文档接入的统一入
java·langchain4j
庞轩px4 小时前
第三篇:泛型深度解析——类型擦除与通配符的奥秘
java·编译·泛型·类型擦除
HoneyMoose11 小时前
Jenkins Cloudflare 部署提示错误
java·servlet·jenkins
阿丰资源11 小时前
基于SpringBoot的物流信息管理系统设计与实现(附资料)
java·spring boot·后端