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

简介: 本文档包含logback-spring.xml配置文件及使用示例,定义了多种日志记录器(如INFO、ERROR、SQL等),并演示如何在Java项目中通过LogProxy获取指定日志实例,实现分类日志输出与管理。

1.logback-spring.xml

XML

复制代码

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

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"?>

<maxHistory>15</maxHistory>

</rollingPolicy>

</appender>


<!--支付-->

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

<level value="INFO"/>

<appender-ref ref="PAY_FILE"/>

</logger>

<!--任务-->

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

<level value="INFO"/>

<appender-ref ref="JOB_FILE"/>

</logger>

<!--错误-->

<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");

}


}


相关文章
|
8天前
|
人工智能 JSON 安全
Fastjson远程代码执行漏洞,阿里云AI安全为您保驾护航
阿里云AI安全产品联动防御Fastjson攻击
2187 12
Fastjson远程代码执行漏洞,阿里云AI安全为您保驾护航
|
8天前
|
云安全 人工智能 安全
|
8天前
|
人工智能 自然语言处理 数据挖掘
Qwen3.8-Max-Preview深度全解析:2.4万亿参数旗舰MoE模型+Token Plan限时优惠完整落地指南
2026年7月,全新旗舰级混合专家大模型Qwen3.8-Max-Preview正式开放抢先体验,作为通义千问Qwen3系列规格最高、综合推理能力顶尖的新一代模型,该模型总参数量达到2.4万亿(2.4T),是当前线上可调用的原生多模态旗舰模型,综合推理水准对标海外顶级Fable 5模型,在复杂工程开发、长文档深度分析、多步骤智能体自治、跨境多语言创作、海量数据挖掘五大高难度业务场景实现跨越式性能提升。
984 1
|
10天前
|
人工智能
Qwen3.8抢先体验!正式版即将发布并开源!
千问Qwen3.8即将开源,参数达2.4T,进化速度以“天”计,实力媲美Fable 5。预览版Qwen3.8-Max已上线阿里Token Plan等平台,限时优惠:日间Credits低至1折,夜间更优,个人/团队版月付仅35元起!
986 44
|
8天前
|
人工智能 自然语言处理 数据挖掘
最新版通义千问(Qwen3.8-Max-Preview)功能介绍
2026年,通义千问正式推出全新旗舰级大模型 **Qwen3.8-Max-Preview 预览版**,作为首款突破万亿参数规格的新一代基座模型,该模型总参数量达到**2.4万亿**,采用全新迭代的MoE混合专家架构,综合推理性能、长文本处理、多模态理解、复杂任务规划能力全面超越前代Qwen3.7-Max版本,整体实力跻身全球第一梯队,可对标海外顶级旗舰模型,是当前面向复杂工程开发、多智能体协同、超长文档解析、专业办公自动化场景的最优国产基座模型。
990 0
|
6天前
|
自然语言处理 测试技术 API
通义千问Qwen3.8-Max-Preview全功能解析:2.4万亿参数旗舰模型深度使用指南
在大模型技术持续迭代的当下,通义千问推出的Qwen3.8-Max-Preview作为新一代旗舰预览版模型,凭借2.4万亿参数的超大规模、多模态融合能力与全场景适配特性,成为开发者与企业用户探索AI应用的核心工具。该模型采用稀疏混合专家(MoE)架构,是通义千问首个突破万亿参数的多模态模型,可同时处理文本、图像、视频与文档等多种数据形态,在全栈代码开发、复杂逻辑推理、长文档分析与多智能体协作等场景实现跨越式升级。本文将全面拆解Qwen3.8-Max-Preview的核心功能,详解API调用流程与配置方法,覆盖多场景实战技巧,帮助用户快速掌握这款旗舰模型的使用方法,充分释放其性能潜力。
478 1
|
9天前
|
人工智能 自然语言处理 数据挖掘
Qwen3.8-Max 预览版全解析:2.4 万亿参数旗舰模型,Token Plan 限时优惠指南
Qwen3.8-Max-Preview是通义千问Qwen3系列旗舰MoE大模型,参数达2.4万亿,综合推理能力居行业第一梯队。支持思考/快速双模式,擅长大模型五大高难场景。现于阿里云百炼Token Plan、Qoder及QoderWork上线体验,个人版低至39元/月。在阿里云百炼官网:https://t.aliyun.com/U/fPVHqY 免费领取千万Tokens
689 1
Qwen3.8-Max 预览版全解析:2.4 万亿参数旗舰模型,Token Plan 限时优惠指南