logback集成springboot框架、集成ssm框架小结

SSM框架下使用logback管理日志 SSM框架下使用logback管理日志前言简单介绍一下logback简单介绍一下logback取代log4j的理由实现日志的步骤1.引入maven依赖2.在web.xml中添加logback的检测1.3配置mybatis-config.xml1.4配置logback.xml1.5配置spring-mybatis.xml1.6创建一个帮助类GlobalExceptionHandler 前言 SSM框... 阅读详情

1.什么是logback

Logback是由log4j创始人设计的一个开源日志组件。Logback是要与SLF4J结合起来。

2.spring boot集成logback

2.1 新建一个spring boot 项目

登录 https://start.spring.io/  

构建一个springboot项目,记得添加web依赖哦

2.2 配置logbackxml

在resources目录下新建logback.xml,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出 -->
<!-- scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true -->
<!-- scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 -->
<!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
<configuration  scan="true" scanPeriod="10 seconds">

    <!-- <include resource="org/springframework/boot/logging/logback/base.xml" /> -->

    <contextName>demo-logback</contextName>
    <!-- name的值是变量的名称,value的值时变量定义的值。通过定义的值会被插入到logger上下文中。定义变量后,可以使“${}”来使用变量。 -->
    <property name="logging.maxFileSize" value="10MB"/>
    <property name="logging.maxHistory" value="60"/>
    <property name="logging.totalSizeCap" value="20GB"/>
    <property name="logging.path" value="E:/ideaWorkspace/logs"/>
    <property name="spring.application.name" value="demo-logback"/>
    <!--<property name="logging.pattern.file" value="${CONSOLE_LOG_PATTERN}"/>-->
    <!--<property name="logging.pattern.console" value="${FILE_LOG_PATTERN}"/>-->

    <property name="logging.pattern.file" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n"/>
    <property name="logging.pattern.console" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n"/>

    <!--输出到控制台-->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <Pattern>${logging.pattern.console}</Pattern>
        </encoder>
    </appender>


    <!--输出到文件,小时分割时间滚动输出-->

    <!-- all.log -->
    <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 正在记录的日志文件的路径及文件名 -->
        <file>${logging.path}/${spring.application.name}/all.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${logging.path}/${spring.application.name}/all/log-all-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <maxHistory>${logging.maxHistory}</maxHistory>
            <maxFileSize>${logging.maxFileSize}</maxFileSize>
            <totalSizeCap>${logging.totalSizeCap}</totalSizeCap>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${logging.pattern.file}</pattern>
            <charset>utf-8</charset>
        </encoder>
    </appender>

    <!--warn.log-->
    <appender name="warn-file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${logging.path}/${spring.application.name}/log_warn.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${logging.path}/${spring.application.name}/warn/log-warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <maxHistory>${logging.maxHistory}</maxHistory>
            <maxFileSize>${logging.maxFileSize}</maxFileSize>
            <totalSizeCap>${logging.totalSizeCap}</totalSizeCap>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${logging.pattern.file}</pattern>
            <charset>utf-8</charset>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>warn</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>

    <!--error.log-->
    <appender name="error-file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${logging.path}/${spring.application.name}/log_error.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${logging.path}/${spring.application.name}/error/log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <maxHistory>${logging.maxHistory}</maxHistory>
            <maxFileSize>${logging.maxFileSize}</maxFileSize>
            <totalSizeCap>${logging.totalSizeCap}</totalSizeCap>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${logging.pattern.file}</pattern>
            <charset>utf-8</charset>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>error</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>

    <!--
        <logger>用来设置某一个包或者具体的某一个类的日志打印级别、
        以及指定<appender>。<logger>仅有一个name属性,
        一个可选的level和一个可选的addtivity属性。
        name:用来指定受此logger约束的某一个包或者具体的某一个类。
        level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,
              还有一个特俗值INHERITED或者同义词NULL,代表强制执行上级的级别。
              如果未设置此属性,那么当前logger将会继承上级的级别。
        addtivity:是否向上级logger传递打印信息。默认是true。
    -->
    <!--<logger name="org.springframework.web" level="info"/>-->
    <!--<logger name="org.springframework.scheduling.annotation.ScheduledAnnotationBeanPostProcessor" level="INFO"/>-->
    <!--
        使用mybatis的时候,sql语句是debug下才会打印,而这里我们只配置了info,所以想要查看sql语句的话,有以下两种操作:
        第一种把<root level="info">改成<root level="DEBUG">这样就会打印sql,不过这样日志那边会出现很多其他消息
        第二种就是单独给dao下目录配置debug模式,代码如下,这样配置sql语句会打印,其他还是正常info级别:
     -->

    <logger name="com.example.demologback.dao" level="debug" additivity="false">
        <appender-ref ref="error-file" />
        <appender-ref ref="warn-file" />
        <appender-ref ref="file" />
        <appender-ref ref="console" />
    </logger>

    <logger name="com.example.demologback" level="debug" additivity="false">
        <appender-ref ref="error-file" />
        <appender-ref ref="warn-file" />
        <appender-ref ref="file" />
        <appender-ref ref="console" />
    </logger>

    <!--
        root节点是必选节点,用来指定最基础的日志输出级别,只有一个level属性
        level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,
        不能设置为INHERITED或者同义词NULL。默认是DEBUG
        可以包含零个或多个元素,标识这个appender将会添加到这个logger。
    -->
    <root level="INFO">
        <appender-ref ref="error-file" />
        <appender-ref ref="warn-file" />
        <appender-ref ref="file" />
        <appender-ref ref="console" />
    </root>

</configuration>

3.SSM集成logback

3.1 引入jar

<dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>${请搜索最新的}</version>
        </dependency>
 
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <version>${请搜索最新的}</version>
        </dependency>
 
        <dependency>
            <groupId>org.logback-extensions</groupId>
            <artifactId>logback-ext-spring</artifactId>
            <version>${请搜索最新的}</version>
        </dependency>

3.2 修改web.xml

<context-param>
        <param-name>logbackConfigLocation</param-name>
        <param-value>classpath:logback.xml</param-value>
    </context-param>
 
    <listener>
        <listener-class>ch.qos.logback.ext.spring.web.LogbackConfigListener</listener-class>
    </listener>

logback.xml配置和上面一下。

以上。

参考:https://www.cnblogs.com/zhangjianbing/p/8992897.html   

           SSM框架引入logback日志框架_瞭望塔的博客-优快云博客

【徒手搭建SSM开发环境七】集成logback日志模块 集成logback日志模块 mybatis集成完后,从调试日志输出中只能看到见到的信息,无法满足使用需求,在实际的SSM集成中,需要集成日志模块,覆盖原有的日志方式, 使得日志记录更加详细,运维开发的效率更高,以下为集成步骤 1,引入logback相关依赖包 org.slf4j slf4j-api 1.7.25 ch.qos.logback logback-classic 1.2.6 ch.qos.logback logback-c 阅读详情

相关推荐

SpringBoot集成logback日志

一.集成logback日志 1.1使用步骤 1.创建SpringBoot框架web项目 2.pom.xml添加ssm需要依赖 <!--SpringBoot框架web项目起步依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</ar

TxCode的博客 541

【SSM基础】Logback日志管理

【SSM基础】Logback日志管理 其他文章: bookcase微服务实战 1、前言 这篇我们说下日志管理,业界常用的日志管理一共有几种: java.util.Logging,Log4j,Log4j2,Logback,Slf4j。 各个日志管理的关系。具体可以查看博客: https://www.cnblogs.com/suger43894/p/9543685.html 其中 java.util.Logging是原生的日志工具,log4j 框架比较旧, logback是在log4j的优化,log4j2是对l

燃尽余火的博客 1373

SpringBoot日志框架深度解析:从SLF4J+Logback原理到生产级配置实践

在Java应用开发中,日志记录是系统可观测性的基石,它帮助开发者追踪程序行为、诊断问题。其核心原理在于通过日志门面(如SLF4J)与具体实现(如Logback、Log4j2)的解耦设计,实现了应用代码与底层日志框架的分离,从而提升了灵活性与可维护性。这种架构的技术价值在于为复杂应用提供了统一的日志管理能力,并能通过桥接技术整合第三方库的日志输出。其应用场景广泛,从本地开发调试到分布式生产环境的监控告警都不可或缺。本文聚焦于SpringBoot默认集成的SLF4J与Logback组合,深入探讨其开箱即用的自动

weixin_34306593的博客 364

SSM:SSM整合logback日志

SSM整合logback日志

weixin_44843569的博客 2041

SSM:Spring+Springmvc+Mybatis框架,后续集成日志插件log4j、logback,集成Druid连接池监控,集成Redis缓存,office文件操作插件poi

Spring+Springmvc+Mybatis框架 构建Spring+Springmvc+Mybatis框架,丰富框架的功能,后续集成日志插件log4j、logback,集成Druid连接池监控,集成Redis缓存,office文件操作插件poi等。 1.基于mvc实现基本的数据增删改查操作。 2.已经分别集成log4j和logback日志插件。 3.已经集成Druid连接池监控。 4.已经集成的Redis缓存,基于jedis使用缓存,实现客户端分片。 5.添加CommonInterceptor类实现HandlerInterceptorAdapter接口拦截请求,基于注解添加RedisAspect拦截类监视缓存方法调用。 6.集成office文件操作插件poi,实现excel数据操作。 7.mybatis-plugin插件实现分页查询和扩展mapper,集成mybatis-plugin插

opencv 常用函数总结

本文是一份OpenCV图像处理的常用函数总结,详细介绍了图像的读入、显示、保存、像素处理、图像属性获取、基础操作、阈值处理、图像平滑、形态学转换以及直方图处理等关键技术。文章通过代码示例和参数说明,帮助读者快速掌握OpenCV在图像处理领域的应用。

weixin_44063529的博客 1600

SpringBoot整合+logback日志配置

本次演示的代码结构如下,基于maven,整合SpringBoot、Spring、Mybaits的SSM框架。同时测试logback日志框架的使用及配置。 1.创建maven工程,修改pom.xml文件 4.0.0 yan.li spring-boot-demo 0.0.1-SNAPSHOT org.springframework.boot

qq296398300的博客 5万+

ROBOGUIDE教程:FANUC机器人X型焊枪气动点焊焊接

FANUC机器人X型焊枪气动点焊焊接虚拟仿真实现方法。

IndRobSim 4389

SSM/springBoot代码生成器——新增全局事务切面,logback日志支持,SSM框架支持

目录 小记 新增全局事务 logback日志支持 SSM框架支持 运行效果 小记 这两天比较清闲,对生成器做了进一步的优化与更新,一起来看一下吧! 新增全局事务 相信我们都知道事务在数据操作的过程当中十分重要,举个最简单的例子,如果程序正在处理添加数据的业务,但是程序执行完sql之后的业务流程中产生了异常,这个时候应该回滚,则添加数据无效,保证了业务的统一和数据的完整。一般...

小螺旋丸的博客 1571

Nacos2.X 源码分析:为订阅方推送、服务健康检查、集群数据同步、grpc客户端服务端初始化

而Nacos2.X 从http请求改为了grpc请求的方式了,在健康检查这方面就是基于长连接来实现的。客户端发送心跳是在构建grpc连接时会有一个线程每隔5s发送一次,NacosClient端发送心跳的代码在。我们能大致猜测:当一个服务的实例进行了更新,那么是不是应该推送给所有订阅了该服务的客户端?当我订阅了某个服务,是不是应该将该服务信息推送给我?在服务实例检查检查流程中,如果出现了要注销的服务实例就会发布。在服务发现时,进行订阅服务的最后会发布一个。服务注册与服务订阅流程中发布的事件最终会被。

qq_44027353的博客 1594

ARM Memory Compiler实战指南:从参数配置到GDSII生成的全流程解析

本文详细解析了ARM Memory Compiler在SRAM设计中的全流程应用,从基础参数配置到GDSII文件生成。涵盖SRAM类型选择、核心参数配置策略、高级优化技巧及TSMC 28nm工艺下的实战案例,帮助IC设计工程师高效实现存储器模块的优化设计。

game4的博客 418

LogBack结合SSM或SpringBoot做日志记录

最短最有效的介绍在spring和springboot环境下怎么结合logback实现日志记录功能

Hitmi_的博客 322

达梦DCA2023年10月培训及考试总结

本次培训共分三天,培训内容不单单是DCA的单机安装、实例创建、库表操作等,培训内容是把关系型数据库的理论及DM8的产品结合起来讲,很实用。具体的考试则是需要个人大量的线下练习,考试总体而言都是培训讲过的内容,只要用心听,好好练习,哪怕是没有计算机基础的童鞋也能考过。提示:以下是本篇文章正文内容,下面案例可供参考总体而言,本次考试不是很难,用心准备,考前认真听讲,考后多次练习,基本都能通过。

qinjuao的博客 2321

SpringBoot整合+logback日志配置 学习

本次演示的代码结构如下,基于maven,整合SpringBoot、Spring、Mybaits的SSM框架。同时测试logback日志框架的使用及配置。 (2)application配置文件  读取配置文件    (3)logback配置文件 &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;configuration&gt; ...

qq_32722783的博客 4461

高级用法:LangChain 安全防护(Guardrails)

在调用开始时校验请求,可做关键词过滤、身份校验、限流等。= "human":return {}],# 使用],= "human":return {}],

Long_像风一样自由 318

LLaMA Factory添加新模型template的实战解析

本文主要介绍了LLaMA Factory添加新模型template的实战解析,希望对使用大语言模型的同学们有所帮助。 文章目录 1. 前言 2. 实战解析 2.1 检查代码 2.2 修改代码

herosunly的博客 19万+

日志记录:LogBack结合SSM或SpringBoot

1 Logback的引入 所谓日志框架是一套能实现日志输出的工具包,而所有能够描述系统运行状态的事件都可以算作日志。 目前常用的日志框架包括Log4j,Log4j 2,Commons Logging,Slf4j,Logback,Jul等等,但是由于种种原因,比较常用的组合使用方式是Slf4j与Logback组合使用,Commons Logging与Log4j组合使用。 Commons Log...

Hitmi_的博客 248

YOLO26涨点改进 | 检测头Head创新改进篇 | 利用DynamicConv高效动态卷积改进YOLO26检测头,DyHead通过增强检测头操作,轻量化改进、提高模型目标检测的精度

YOLO26作为新一代轻量化目标检测模型的代表,凭借精简的Backbone架构、高效的特征融合 Neck 设计,在实时检测场景(如嵌入式设备、边缘计算)中展现出优异的性能,成为工业落地与科研入门的优选模型。但在实际应用中,YOLO26原生检测头仍存在核心瓶颈:采用固定参数卷积核,无法根据输入特征的目标尺度、纹理差异动态调整卷积权重,导致多尺度目标适配不足、复杂背景下特征利用率低,且传统改进方案往往难以平衡“精度提升”与“轻量化”,要么精度提升有限,要么大幅增加参数量、拖累推理速度。

qq_36130719的博客 376

logback日志记录

最近在学习Spring Boot,发现Spring Boot自身集成logback日志记录,造成我希望使用log4j的时候出现问题,百度了一下发现logback更新更好用,所以这里记录一下配置流程。 Java框架是SSM,所以只捕获controller层异常,其他层不处理异常信息,将所有的异常都交到controller层。 以下为logback.xml配置文件内容: <?xml versio...

single_cong的博客 1021

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

SpringBoot日志框架基础(slf4j+logback)

SpringBoot日志框架基础(slf4j+logback) 1.统一日志记录 之前要是使用ssm框架使用统一日志的话,有的框架(spring默认commons-logging,hibernate默认jboss-logging等等…)有自己默认日志框架,因此在使用前需要统一日志记录。以此实现即使默认为其他日志框架也会统一使用slf4j进行输出。 将系统中所有日志都统一到slf4j步骤: 将系...

小蜉蝣星蔚的博客 446

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

pom里面不要logback_SpringBoot整合+logback日志配置

本次演示的代码结构如下,基于maven,整合SpringBoot、Spring、Mybaits的SSM框架。同时测试logback日志框架的使用及配置。1.创建maven工程,修改pom.xml文件4.0.0yan.lispring-boot-demo0.0.1-SNAPSHOTorg.springframework.bootspring-boot-starter-parent1.5.8.RELE...

weixin_39623671的博客 486

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Logback使用课程

V哥官网:http://www.vgxit.com 本博客对应视频教程:http://www.vgxit.com/course/19

V哥教育,java技术博客 1596

SpringBoot搭建SSM框架的简单功能实现源码

在Springboot基础上,搭建SSM框架,使用mysql数据库进行存储数据 功能上实现了从前端页面发送请求,根据用户名查询用户的简单功能,可进行拓展,适合新手学习使用 另外使用logback完成了日志的管理工作         数据库表数据很简单,可根据代码自行创建,亦可使用项目中的sql文件导入 话不多少,附上github地址: https://github.co

Arjen_Wang的博客 802

SpringBoot 搭建多模块的后台项目-SSM(四)将日志集成进项目

1.添加pom依赖,在父项目中 2.在xproject-web工程添加logback-spring.xml文件 <?xml version="1.0" encoding="UTF-8"?> <!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的...

lihongtai的专栏 780

springboot和ssm的区别

springboot和ssm的关系 1:内置了tomcat 内部集成了tomcatssm打包warweb工程 boot打包是个jar主函数 2:配置简化!!! springcloud一个个springboot的应用整合成springcloud springboot默认使用jacksonmessageconvert 为null的也转换了 yml的缺点...

weixin_30807779的博客 4792
上一篇: freemarker初体验,导出dox文档
下一篇: Kafka基础概念
Yuwen_forJava
博客等级 码龄9年 28粉丝 90原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值