logback-spring.xml的内容格式
目录
一、logback-spring.xml
二、Logback 中的三种日志文件类型
一、logback-spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="10 seconds" ><!-- <statusListener> 标签用于指定日志记录器的状态监听器。 -->
<!-- NopStatusListener 是一个空操作的监听器,它不会进行任何操作,仅仅是为了占位,避免了配置文件中没有状态监听器而出现的错误。--><statusListener class = "ch.qos.logback.core.status.NopStatusListener"/><contextName>loback</contextName><property name="log.path" value="./ieconfiglog/nmys" /><!-- 输出到控制台--><appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"><!-- 此日志appender是开发使用,只配置最低级别,控制台输出的日志级别是大于或等于此级别的日志信息 --><filter class="ch.qos.logback.classic.filter.ThresholdFilter"><level>info</level></filter><encoder><Pattern> %-5p [%d][%mdc{mdc_accNo}] %C:%L - %m %n</Pattern><charset>UTF-8</charset></encoder></appender><!-- 输出到文件 --><!-- 时间滚动输出 level为 ERROR 日志 --><!-- 该 appender 的 class 属性指定了 Logback 中的 RollingFileAppender 类,表示使用该类来将日志记录到文件并做日志滚动。 --><appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"><!-- 正在记录的日志文件的路径及文件名 --><file>${log.path}/log_error.log</file><!--日志文件输出格式 --><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} -%msg%n</pattern><charset>UTF-8</charset> <!-- 设置字符集 --></encoder><!-- 日志记录器的滚动策略,按日志,按大小记录 --><!-- TimeBasedRollingPolicy 类作为日志滚动策略,表示按时间滚动日志文件 --><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 日志归档 --><fileNamePattern>${log.path}/error/log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern><timeBasedFileNamingAndTriggeringPolicyclass="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"><maxFileSize>100MB</maxFileSize></timeBasedFileNamingAndTriggeringPolicy><!--日志文件保留天数 --><maxHistory>15</maxHistory></rollingPolicy><!-- 此日志文件只记录error级别的 --><filter class="ch.qos.logback.classic.filter.LevelFilter"><level>error</level><onMatch>ACCEPT</onMatch><onMismatch>DENY</onMismatch></filter></appender><!-- 时间滚动输出 level 为 DEBUG 日志 --><appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"><!-- 正在记录的日志文件的路径及文件名 --><file>${log.path}/log_debug.log</file><!--日志文件输出格式 --><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} -%msg%n</pattern><charset>UTF-8</charset> <!-- 设置字符集 --></encoder><!-- 日志记录器的滚动策略,按日期,按大小记录 --><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 日志归档 --><fileNamePattern>${log.path}/debug/log-debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern><timeBasedFileNamingAndTriggeringPolicyclass="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"><maxFileSize>100MB</maxFileSize></timeBasedFileNamingAndTriggeringPolicy><!--日志文件保留天数 --><maxHistory>15</maxHistory></rollingPolicy><!-- 此日志文件只记录debug级别的 --><filter class="ch.qos.logback.classic.filter.LevelFilter"><level>debug</level><onMatch>ACCEPT</onMatch><onMismatch>DENY</onMismatch></filter></appender><!-- 时间滚动输出 level为 INFO 日志 --><appender name="INFO_FILE"class="ch.qos.logback.core.rolling.RollingFileAppender"><!-- 正在记录的日志文件的路径及文件名 --><file>${log.path}/log_info.log</file><!--日志文件输出格式 --><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} -%msg%n</pattern><charset>UTF-8</charset></encoder><!-- 日志记录器的滚动策略,按日期,按大小记录 --><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 每天日志归档路径以及格式 --><fileNamePattern>${log.path}/info/log-info-%d{yyyy-MM-dd}.%i.log</fileNamePattern><timeBasedFileNamingAndTriggeringPolicyclass="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"><maxFileSize>100MB</maxFileSize></timeBasedFileNamingAndTriggeringPolicy><!--日志文件保留天数 --><maxHistory>15</maxHistory></rollingPolicy><!-- 此日志文件只记录info级别的 --><filter class="ch.qos.logback.classic.filter.LevelFilter"><level>info</level><onMatch>ACCEPT</onMatch><onMismatch>DENY</onMismatch></filter></appender><root level="info"><appender-ref ref="INFO_FILE" /><appender-ref ref="CONSOLE" /></root><logger name="com/example/ie" level="ERROR"><appender-ref ref="ERROR_FILE"/></logger><logger name="com/example/ie" level="DEBUG"><appender-ref ref="DEBUG_FILE"/></logger><logger name="com.mysql.jdbc" level="DEBUG"><appender-ref ref="DEBUG_FILE"/></logger></configuration>
二、Logback 中的三种日志文件类型
ERROR_FILE、DEBUG_FILE 和 INFO_FILE 是 Logback 中的三种日志文件类型,分别用于记录不同级别的日志信息。
ERROR_FILE:该类型的日志文件用于记录 ERROR 级别的日志信息,即只记录应用程序中出现的错误和异常相关的日志信息。例如:
2021-08-31 15:43:56,857 [main] ERROR com.example.MyApplication - Something went wrong: java.lang.NullPointerExceptionat com.example.MyApplication.run(MyApplication.java:25)at com.example.MyApplication.main(MyApplication.java:11)
DEBUG_FILE:该类型的日志文件用于记录 DEBUG 级别的日志信息,即记录应用程序中详细的调试信息,例如调用方法、变量值等。通常用于开发和测试环境中。例如:
2021-08-31 15:43:56,857 [main] DEBUG com.example.MyController - Request received: GET /api/v1/users?page=1&pageSize=10
2021-08-31 15:43:56,857 [main] DEBUG com.example.MyService - Retrieving users from database...
2021-08-31 15:43:56,857 [main] DEBUG com.example.MyService - Found 8 users in database
2021-08-31 15:43:56,857 [main] DEBUG com.example.MyController - Response sent: [{"id":1,"name":"Alice"},{"id":2,"name":"Bob"},...]
INFO_FILE:该类型的日志文件用于记录 INFO 级别的日志信息,即一些重要的业务信息或应用程序运行状态的变化信息,例如启动和关闭应用程序、连接数据库等。例如:
2021-08-31 15:43:56,857 [main] INFO com.example.MyApplication - Starting application...
2021-08-31 15:43:57,205 [main] INFO com.example.MyApplication - Application started successfully
2021-08-31 15:44:07,876 [main] INFO com.example.MyService - Connecting to database: jdbc:postgresql://localhost:5432/mydb
2021-08-31 15:44:08,229 [main] INFO com.example.MyService - Connected to database successfully
相关文章:
logback-spring.xml的内容格式
目录 一、logback-spring.xml 二、Logback 中的三种日志文件类型 一、logback-spring.xml <?xml version"1.0" encoding"UTF-8"?> <configuration scan"true" scanPeriod"10 seconds" ><!-- <statusListener…...
nodejs+vue+elementui+express青少年编程课程在线考试系统
针对传统线下考试存在的老师阅卷工作量较大,统计成绩数据时间长等问题,实现一套高效、灵活、功能强大的管理系统是非常必要的。该系统可以迅速完成随机组卷,及时阅卷、统计考试成绩排名的效果。该考试系统要求:该系统将采用B/S结构…...
Navicat 技术指引 | GaussDB 数据查看器
Navicat Premium(16.2.8 Windows版或以上) 已支持对GaussDB 主备版的管理和开发功能。它不仅具备轻松、便捷的可视化数据查看和编辑功能,还提供强大的高阶功能(如模型、结构同步、协同合作、数据迁移等),这…...
Docker的registry
简介 地址:https://hub.docker.com/_/registry Dcoker registry是存储Dcoker image的仓库,运行push,pull,search时,是通过Dcoker daemon与docker registry通信。有时候会用Dcoker Hub这样的公共仓库可能不方便&#x…...
【vue_3】关于超链接的问题
1、需求2、修改前的代码3、修改之后(1)第一次(2)第二次(3)第三次(4)第四次(5)第五次 1、需求 需求:要给没有超链接的列表添加软超链接 2、修改前…...
redis优化秒杀和消息队列
redis优化秒杀 1. 异步秒杀思路1.1 在redis存入库存和订单信息1.2 具体流程图 2. 实现2.1 总结 3. Redis的消息队列3.1 基于list实现消息队列3.2 基于PubSub实现消息队列3.3 基于stream实现消息队列3.3.1 stream的单消费模式3.3.2 stream的消费者组模式 3.4 基于stream消息队列…...
arm-eabi-gcc 和 arm-none-eabi-gcc 都是基于 GCC 的交叉编译器
arm-eabi-gcc 和 arm-none-eabi-gcc 都是基于 GCC 的交叉编译器,用于编译 ARM 架构的嵌入式系统。它们的命名规则如下: arm 表示目标架构是 ARM。eabi 表示嵌入式应用程序二进制接口(Embedded Application Binary Interface)&…...
《大话设计模式》(持续更新中)
《大话设计模式》 序 为什么要学设计模式第0章 面向对象基础什么是对象?什么是类?什么是构造方法?什么是重载?属性与字段有什么区别?什么是封装?什么是继承?什么是多态?抽象类的目的…...
人工智能原理复习--绪论
文章目录 人工智能原理概述图灵测试人工智能的研究方法符号主义连接主义行为主义总结 人工智能原理概述 人工智能是计算机科学基础理论研究的重要组成部分 现代人工智能一般认为起源于美国1956你那夏季的达特茅斯会议,在这次会议上,John McCarthy第一次…...
[网络] 字节一面~ 2. HTTP 2 与 HTTP 1.x 有什么区别
头部压缩 在 HTTP2 当中,如果你发出了多个请求,并且它们的头部(header)是相同的,那么 HTTP2 协议会帮你消除同样的部分。(其实就是在客户端和服务端维护一张索引表来实现)二进制格式 HTTP1.1 采用明文的形式 HTTP/2 全⾯采⽤了⼆进制格式&…...
自己动手实现一个深度学习算法——八、深度学习
深度学习是加深了层的深度神经网络。 1.加深网络 1)向更深的网络出发 创建一个如下图所示的网络结构的CNN 这个网络的层比之前实现的网络都更深。这里使用的卷积层全都是33 的小型滤波器,特点是随着层的加深,通道数变大(卷积…...
js闭包的必要条件及创建和消失(生命周期)
>创建闭包的必要条件: 1.函数嵌套 2.内部函数引用外部函数的变量 3.将内部函数作为返回值返回 >闭包是什么? 就是可以访问外部函数(作用域)中变量的内部函数 > 闭包是什么时候产生的? - 当调用外部函数…...
鸿蒙开发-ArkTS 语言-基础语法
[写在前面: 文章多处用到gif动图,如未自动播放,请点击图片] 1. 初识 ArkTS 语言 ArkTS 是 HarmonyOS 优选主力开发语言。ArkTS 是基于 TypeScript (TS) 扩展的一门语言,继承了 TS 的所有特性,是TS的超集。 主要是扩展了以下几个方…...
GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF
GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF 文章目录 GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHFPretraining 预训练阶段Supervised FineTuning (SFT&#x…...
电子学会C/C++编程等级考试2022年03月(三级)真题解析
C/C++等级考试(1~8级)全部真题・点这里 第1题:和数 给定一个正整数序列,判断其中有多少个数,等于数列中其他两个数的和。 比如,对于数列1 2 3 4, 这个问题的答案就是2, 因为3 = 2 + 1, 4 = 1 + 3。 时间限制:10000 内存限制:65536输入 共两行,第一行是数列中数的个数…...
理解 JUnit, JaCoCo 到 SonarQube 的过程及 Maven 配置
Java 项目需要产生单元测试及代码覆盖率的话一直都是走的 JUnit 单元测试,JaCoCo 基于测试产生测试覆盖率,然后送到 SonarQube 去展示这条路子。当然 SonarQube 还可以帮我们进行代码的静态分析。但对其中的具体使用及过程知晓的并不深,基本就…...
人工智能关键技术决定机器人产业的前途
人工智能(Artificial Intelligence,AI)是指让计算机或机器具有类似于人类的智能和学习能力的技术。人工智能技术与机器人技术的结合将改变传统的机器人行业格局,就像智能手机对传统手机的颠覆一样。本文从人工智能技术的发展趋势、…...
2023华为ICT网络初赛试题回顾
所有题目都只能用来学习交流,禁止用于非法不公平的使用,如有侵权,该文章立刻删除。 1、某机房没有合适长度的网线,现需手工制作一个568B标准的双纹线,那么应按照以下哪一线序进行制作? A.绿白,绿,蓝&#…...
Hands-on Machine Learning with Scikit-Learn,Keras TensorFlow
读书记录(缓慢更新) 目录 Part 1. The Fundamentals of Machine Learning The Content of The Machine Learning Landscape The Machine Learning Landscape Part 1. The Fundamentals of Machine Learning The Content of The Machine Learning Landscape Part 1. The F…...
242. 有效的字母异位词
这篇文章会收录到 :算法通关村第十二关-白银挑战字符串经典题目-CSDN博客 242. 有效的字母异位词 描述 : 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t …...
手把手教你用王思鱼指纹浏览器(Windows版)绕过主流检测站点
实战指南:Windows指纹浏览器配置与主流检测站点绕过验证 指纹浏览器正逐渐成为数字身份管理领域的重要工具,它能有效解决多账号运营、隐私保护等场景下的浏览器指纹追踪问题。不同于传统虚拟机的笨重方案,这类工具通过精准修改浏览器底层参数…...
PlugY:暗黑破坏神2单机模式功能增强的高效解决方案
PlugY:暗黑破坏神2单机模式功能增强的高效解决方案 【免费下载链接】PlugY PlugY, The Survival Kit - Plug-in for Diablo II Lord of Destruction 项目地址: https://gitcode.com/gh_mirrors/pl/PlugY PlugY作为一款专为暗黑破坏神2单机模式设计的开源工具…...
5G时代下,MEC如何让无人驾驶不再‘卡顿’?——边缘计算实战解析
5G时代下,MEC如何让无人驾驶不再‘卡顿’?——边缘计算实战解析 当一辆无人驾驶汽车以60公里时速行驶时,每100毫秒的延迟就会导致1.67米的制动距离差异。这正是边缘计算技术(MEC)在智能交通领域大显身手的核心场景——…...
5分钟搭建Python微信机器人:实现自动化消息处理的终极指南
5分钟搭建Python微信机器人:实现自动化消息处理的终极指南 【免费下载链接】WechatBot 项目地址: https://gitcode.com/gh_mirrors/wechatb/WechatBot 在数字化办公时代,微信已成为职场沟通的主要渠道,但重复性的消息处理工作消耗了大…...
5分钟终极指南:如何让加密音乐文件重获自由
5分钟终极指南:如何让加密音乐文件重获自由 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web 项目地址: https://gitcode…...
小程序开发实战:解决openid获取失败之invalid code错误解析
1. 为什么会出现invalid code错误? 最近在开发小程序时,不少小伙伴都遇到了获取openid失败的问题,错误提示是"invalid code",错误码40029。这个问题看似简单,但背后隐藏着几个关键点需要理解。 首先我们要明…...
零基础学AI,从入门到上手,看这一篇就够了
零基础学习AI的路径规划学习AI需要从基础数学、编程语言开始,逐步深入机器学习和深度学习。以下路径适合完全零基础的学习者。数学基础 线性代数、概率统计和微积分是AI的核心数学工具。线性代数涉及矩阵运算,概率统计帮助理解数据分布,微积分…...
Auto-Video-Generator:智能视频自动化制作全流程 | 内容创作者的高效解决方案
Auto-Video-Generator:智能视频自动化制作全流程 | 内容创作者的高效解决方案 【免费下载链接】auto-video-generateor 自动视频生成器,给定主题,自动生成解说视频。用户输入主题文字,系统调用大语言模型生成故事或解说的文字&…...
3步解决Windows苹果设备连接难题:给非技术用户的驱动安装指南
3步解决Windows苹果设备连接难题:给非技术用户的驱动安装指南 【免费下载链接】Apple-Mobile-Drivers-Installer Powershell script to easily install Apple USB and Mobile Device Ethernet (USB Tethering) drivers on Windows! 项目地址: https://gitcode.com…...
Mac下OpenClaw开发环境配置:千问3.5-35B-A3B-FP8调试技巧合集
Mac下OpenClaw开发环境配置:千问3.5-35B-A3B-FP8调试技巧合集 1. 为什么选择MacOpenClaw千问3.5组合 去年第一次接触OpenClaw时,我尝试在Windows和Linux上分别部署,最终发现Mac环境下的开发体验最为丝滑。特别是搭配千问3.5-35B-A3B-FP8这类…...
