SSM项目之商铺系统-logback的配置(四)

2024-02-18 02:32

本文主要是介绍SSM项目之商铺系统-logback的配置(四),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

logback

Logback 是 Slf4j 的原生实现框架,同样也是出自 Log4j 一个人之手,但拥有比 log4j 更多的优点、特性和更做强的性能,现在基本都用来代替 log4j 成为主流。

我们在

设置一个名为logback.xml文件来配置logback,具体信息如下

 

<?xml version="1.0" encoding="UTF-8"?>
<!-- scan属性未true时,如果配置文档发生改变将会进行重新加载 -->
<!-- scanPeriod属性设置监测配置文件修改的时间间隔,默认单位为毫秒,在scan为true时才生效 -->
<!-- debug属性如果为true时,会打印出logback内部的日志信息 -->
<configuration scan="true" scanPeriod="60 seconds" debug="false"><!-- 定义参数常量 --><!-- 日志级别:TRACE<DEBUG<INFO<WARN<ERROR,其中常用的是DEBUG、INFO和ERROR --><property name="log.level" value="debug" /><!-- 文件保留时间 --><property name="log.maxHistory" value="30" /><!-- 日志存储路径 --><property name="log.filePath" value="${catalina.base}/logs/webapps" /><!-- 日志的显式格式 --><property name="log.pattern"value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50}-%msg%n"></property><!-- 用于说明输出介质,此处说明控制台输出 --><appender name="consoleAppender"class="ch.qos.logback.core.ConsoleAppender"><!-- 类似于layout,除了将时间转化为数组,还会将转换后的数组输出到相应的文件中 --><encoder><!-- 定义日志的输出格式 --><pattern>${log.pattern}</pattern></encoder></appender><!-- DEBUG,表示文件随着时间的推移按时间生成日志文件 --><appender name="debugAppender"class="ch.qos.logback.core.rolling.RollingFileAppender"><!-- 文件路径 --><file>${log.filePath}/debug.log</file><!-- 滚动策略 --><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 设置文件名称 --><fileNamePattern>${log.filePath}/debug/debug.%d{yyyy-MM-dd}.log.gz</fileNamePattern><!-- 设置最大保存周期 --><MaxHistory>${log.maxHistory}</MaxHistory></rollingPolicy><encoder><pattern>${log.pattern}</pattern></encoder><!-- 过滤器,过滤掉不是指定日志水平的日志 --><filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 设置日志级别 --><level>DEBUG</level><!-- 如果跟该日志水平相匹配,则接受 --><onMatch>ACCEPT</onMatch><!-- 如果跟该日志水平不匹配,则过滤掉 --><onMismatch>DENY</onMismatch></filter></appender><!-- INFO,表示文件随着时间的推移按时间生成日志文件 --><appender name="infoAppender"class="ch.qos.logback.core.rolling.RollingFileAppender"><!-- 文件路径 --><file>${log.filePath}/info.log</file><!-- 滚动策略 --><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 设置文件名称 --><fileNamePattern>${log.filePath}/info/info.%d{yyyy-MM-dd}.log.gz</fileNamePattern><!-- 设置最大保存周期 --><MaxHistory>${log.maxHistory}</MaxHistory></rollingPolicy><encoder><pattern>${log.pattern}</pattern></encoder><!-- 过滤器,过滤掉不是指定日志水平的日志 --><filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 设置日志级别 --><level>INFO</level><!-- 如果跟该日志水平相匹配,则接受 --><onMatch>ACCEPT</onMatch><!-- 如果跟该日志水平不匹配,则过滤掉 --><onMismatch>DENY</onMismatch></filter></appender><!-- ERROR,表示文件随着时间的推移按时间生成日志文件 --><appender name="errorAppender"class="ch.qos.logback.core.rolling.RollingFileAppender"><!-- 文件路径 --><file>${log.filePath}/error.log</file><!-- 滚动策略 --><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 设置文件名称 --><fileNamePattern>${log.filePath}/error/error.%d{yyyy-MM-dd}.log.gz</fileNamePattern><!-- 设置最大保存周期 --><MaxHistory>${log.maxHistory}</MaxHistory></rollingPolicy><encoder><pattern>${log.pattern}</pattern></encoder><!-- 过滤器,过滤掉不是指定日志水平的日志 --><filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 设置日志级别 --><level>ERROR</level><!-- 如果跟该日志水平相匹配,则接受 --><onMatch>ACCEPT</onMatch><!-- 如果跟该日志水平不匹配,则过滤掉 --><onMismatch>DENY</onMismatch></filter></appender><!-- 用于存放日志对象,同时指定关联的package位置 --><!-- name指定关联的package --><!-- level表明指记录哪个日志级别以上的日志 --><!-- appender-ref指定logger向哪个文件输出日志信息 --><!-- additivity为true时,logger会把根logger的日志输出地址加入进来,但logger水平不依赖于根logger --><logger name="com.campus.o2o" level="${log.level}" additivity="true"><appender-ref ref="debugAppender" /><appender-ref ref="infoAppender" /><appender-ref ref="errorAppender" /></logger><!-- 特殊的logger,根logger --><root lever="info"><!-- 指定默认的日志输出 --><appender-ref ref="consoleAppender" /></root>
</configuration>

 

这篇关于SSM项目之商铺系统-logback的配置(四)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/719767

相关文章

IDEA运行spring项目时,控制台未出现的解决方案

《IDEA运行spring项目时,控制台未出现的解决方案》文章总结了在使用IDEA运行代码时,控制台未出现的问题和解决方案,问题可能是由于点击图标或重启IDEA后控制台仍未显示,解决方案提供了解决方法... 目录问题分析解决方案总结问题js使用IDEA,点击运行按钮,运行结束,但控制台未出现http://

解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题

《解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题》文章详细描述了在使用lombok的@Data注解标注实体类时遇到编译无误但运行时报错的问题,分析... 目录问题分析问题解决方案步骤一步骤二步骤三总结问题使用lombok注解@Data标注实体类,编译时

VScode连接远程Linux服务器环境配置图文教程

《VScode连接远程Linux服务器环境配置图文教程》:本文主要介绍如何安装和配置VSCode,包括安装步骤、环境配置(如汉化包、远程SSH连接)、语言包安装(如C/C++插件)等,文中给出了详... 目录一、安装vscode二、环境配置1.中文汉化包2.安装remote-ssh,用于远程连接2.1安装2

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

SpringBoot项目中Maven剔除无用Jar引用的最佳实践

《SpringBoot项目中Maven剔除无用Jar引用的最佳实践》在SpringBoot项目开发中,Maven是最常用的构建工具之一,通过Maven,我们可以轻松地管理项目所需的依赖,而,... 目录1、引言2、Maven 依赖管理的基础概念2.1 什么是 Maven 依赖2.2 Maven 的依赖传递机

C#实现系统信息监控与获取功能

《C#实现系统信息监控与获取功能》在C#开发的众多应用场景中,获取系统信息以及监控用户操作有着广泛的用途,比如在系统性能优化工具中,需要实时读取CPU、GPU资源信息,本文将详细介绍如何使用C#来实现... 目录前言一、C# 监控键盘1. 原理与实现思路2. 代码实现二、读取 CPU、GPU 资源信息1.

Redis多种内存淘汰策略及配置技巧分享

《Redis多种内存淘汰策略及配置技巧分享》本文介绍了Redis内存满时的淘汰机制,包括内存淘汰机制的概念,Redis提供的8种淘汰策略(如noeviction、volatile-lru等)及其适用场... 目录前言一、什么是 Redis 的内存淘汰机制?二、Redis 内存淘汰策略1. pythonnoe

Vue项目中Element UI组件未注册的问题原因及解决方法

《Vue项目中ElementUI组件未注册的问题原因及解决方法》在Vue项目中使用ElementUI组件库时,开发者可能会遇到一些常见问题,例如组件未正确注册导致的警告或错误,本文将详细探讨这些问题... 目录引言一、问题背景1.1 错误信息分析1.2 问题原因二、解决方法2.1 全局引入 Element

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个