1. 整合Logback,滚动记录+多文件

简介: 本文展示了logback-spring.xml的配置示例,定义了ERROR、INFO等日志级别及输出文件,并通过Java代码演示如何使用Logger记录不同类型的日志信息,适用于Spring Boot项目中的日志管理。

1.logback-spring.xml

XML

复制代码

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

<?xml version="1.0" encoding="UTF-8"?>

<logger name="ERROR_LOG" additivity="${ADDITIVITY}">

<level value="ERROR"/>

<appender-ref ref="ERROR_FILE"/>

</logger>

<!--请求参数-->

<logger name="INFO_LOG" additivity="${ADDITIVITY}">

<level value="INFO"/>

<appender-ref ref="INFO_FILE"/>

</logger>

<!--请求参数-->

<logger name="REQUEST_PARAM_LOG" additivity="${ADDITIVITY}">

<level value="INFO"/>

<appender-ref ref="REQUEST_PARAM_FILE"/>

</logger>

<!--sql日志输出设置-->

<logger name="cn.zhicall.web.dao" additivity="${ADDITIVITY}">

<level value="DEBUG"/>

<appender-ref ref="SQL_FILE"/>

</logger>

<!--第三方日志输出配置-->

<logger name="java.sql.Connection" additivity="${ADDITIVITY}">

<level value="DEBUG"/>

<appender-ref ref="SQL_FILE"/>

</logger>

<logger name="java.sql.Statement" additivity="${ADDITIVITY}">

<level value="INFO"/>

<appender-ref ref="SQL_FILE"/>

</logger>

<logger name="java.sql.PreparedStatement" additivity="${ADDITIVITY}">

<level value="DEBUG"/>

<appender-ref ref="SQL_FILE"/>

</logger>

<logger name="com.alibaba.druid" additivity="${ADDITIVITY}">

<level value="DEBUG"/>

<appender-ref ref="SQL_FILE"/>

</logger>

<logger name="java.sql.ResultSet" additivity="${ADDITIVITY}">

<level value="INFO" />

<appender-ref ref="SQL_FILE" />

</logger>

<!-- spring的日志输入设置 -->

<logger name="org.springframework" additivity="${ADDITIVITY}">

<level value="INFO"/>

<appender-ref ref="INFO_FILE"/>

</logger>

<logger name="org.mybatis.spring.mapper" additivity="${ADDITIVITY}">

<level value="INFO"/>

<appender-ref ref="INFO_FILE"/>

</logger>

<!-- MyBatis日志输出设置 -->

<logger name="org.apache.ibatis" level="DEBUG" additivity="${ADDITIVITY}">

<level value="INFO"/>

<appender-ref ref="SQL_FILE"/>

</logger>

<logger name="org.apache.ibatis.io.ResolverUtil" additivity="${ADDITIVITY}">

<level value="INFO"/>

<appender-ref ref="SQL_FILE"/>

</logger>


<root level="debug">

<appender-ref ref="CONSOLE" />

</root>

</configuration>

2.使用示例

Java

运行代码复制代码

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

package cn.test.web.controller.im;


import com.zhicall.framework.core.common.utils.log.LogProxy;

import org.slf4j.Logger;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.data.redis.core.RedisTemplate;

import org.springframework.web.bind.annotation.*;

import redis.clients.jedis.Jedis;

import redis.clients.jedis.JedisPool;

import redis.clients.jedis.JedisPoolConfig;


import java.util.concurrent.TimeUnit;


/**

* @author Herb

* @create 2020-04-26 13:05

**/

@RestController

@RequestMapping("/test")

public class TestController {


private Logger logger = LogProxy.getLogger("INFO_LOG");

private Logger logger2 = LogProxy.getLogger("ERROR_LOG");


   @Autowired

private ImPlatformDoctorService imPlatformDoctorService;


   @Autowired

protected RedisTemplate redisTemplate;


   @GetMapping("/getuser")

public void getuser() {

logger.info("进入getUser(INFO_LOG-INFO)");

logger.error("进入getUser(INFO_LOG-ERROR)");

logger2.error("进入getUser(ERROR_LOG-ERROR)");

imPlatformDoctorService.queryDoctorConfig(10407L, "1");

}


}


相关文章
|
XML Java 测试技术
SpringBoot入门篇 01、Springboot入门及配置(二)
SpringBoot入门篇 01、Springboot入门及配置(二)
|
5月前
|
人工智能 Linux API
OpenClaw 阿里云+本地多系统部署全攻略,大模型配置+planning-with-files技能实战解析
在基于OpenClaw(Clawdbot,开发者昵称“龙虾”)进行AI协作的过程中,开发者常面临这样的问题:面对复杂任务时,与AI的多轮对话极易丢失上下文,最终输出结果偏离预期,甚至出现逻辑混乱的情况。2026年,planning-with-files技能的出现彻底解决了这一痛点,该技能通过文件化的规划方式,将复杂任务的执行过程沉淀为标准化文档,让AI协作具备可追溯、可恢复、可管控的特性。本文将完整梳理2026年OpenClaw在阿里云及本地MacOS、Linux、Windows11系统的部署流程,详解阿里云千问大模型与免费Coding Plan API的配置方法,深度解析planning-w
1065 3
|
2月前
|
存储 安全 Java
首个 Java Harness Framework 来了 -- AgentScope 1.1 HarnessAgent 详解
AgentScope Java 1.1.0正式发布,完整实现Harness Framework:支持工作区驱动、可插拔抽象文件系统、开箱即用上下文管理与子Agent编排,兼顾个人提效与企业级安全、隔离、分布式部署需求。
|
4月前
|
人工智能 自然语言处理 监控
字节开源 DeerFlow 2.0:智能体开始“自己干活”了
字节开源DeerFlow 2.0智能体框架:告别“问答式AI”,支持长时任务执行、多Agent协作、沙盒代码运行与分层记忆。面向测试开发,可自动生成用例、执行接口测试、定位缺陷,推动测试从“脚本编写”迈向“流程设计”新阶段。
|
8月前
|
负载均衡 Java 应用服务中间件
Nacos注册中心
本文介绍了Nacos的安装部署、服务注册与发现、分级模型、负载均衡策略、权重控制、环境隔离及临时/持久化实例等核心功能,涵盖从本地启动到生产级配置的完整实践流程。通过实际操作演示了如何整合Spring Cloud Alibaba实现服务治理,并深入解析其架构设计与应用场景。
 Nacos注册中心
|
8月前
|
SQL 容灾 数据库
分布式事务Seata
本章学习分布式事务问题及解决方案,涵盖CAP、BASE理论,并深入讲解Seata框架的XA、AT、TCC、SAGA四种模式原理与实现,掌握跨服务事务一致性处理及高可用部署。
 分布式事务Seata
|
8月前
|
XML Java 数据库
SpringCloud工程部署启动
本文介绍SpringCloud微服务工程的搭建与部署,涵盖项目创建、模块配置、数据库导入及服务远程调用实现。通过RestTemplate完成服务间HTTP通信,解决跨服务数据获取问题,并引导读者理解微服务拆分与调用关系,为后续深入学习奠定基础。(239字)
 SpringCloud工程部署启动
|
8月前
|
SQL 容灾 Nacos
Seata的部署和集成
本文介绍Seata TC服务器的部署与微服务集成,包括下载、解压、配置修改、数据库表创建及启动步骤,并实现基于Nacos的高可用与异地容灾集群,提升分布式事务可靠性。
|
8月前
|
监控 Java 测试技术
微服务保护Sentinel
本课程深入讲解微服务中雪崩问题的成因及解决方案,重点介绍阿里开源流量治理组件Sentinel的应用。涵盖Sentinel的部署与整合、限流模式(直接、关联、链路)、流控效果(快速失败、预热、排队等待)、熔断降级、线程隔离、授权规则及规则持久化等内容,结合Jmeter压测实战,帮助开发者全面提升微服务稳定性与高可用能力。
|
8月前
|
项目管理 开发者
业务架构图
业务架构图是梳理业务层级与关系的工具,通过分层、分模块、分功能,抽象出清晰的业务结构。它既提升客户理解度,也帮助开发者快速掌握系统全貌,实现业务与技术的有效协同。
业务架构图

热门文章

最新文章