划水时间,记录一下用到的相关slf4j 日志打印,如何实现配置输出、本地保存log日志文件...

  我使用的是SpringBoot框架,slf4j 类库已经包含到了 SpringBoot 框架中,所有,所有前提是“你的SpringBoot项目能够启动起来”

  /手动滑稽...

  第一步:在 application.properties 文件中先定义好logger文件的一些配置信息,这样方便以后修改配置;

######################   log 配置  ######################
###################### log 配置 ######################
log.fileBackupPath=D://log/
log.history=30
log.fileSize=10mb
log.totalSize=100mb
#当前日志文件名称
log.fileName=server.log
#备份日志文件命名策略
log.backupFileNamePolicy=server-%d{yyyy-MM-dd}.%i.log
#日志文本生成策略
# d:时间 C:类名称 M:方法名称 L:行号 m:消息 n:换行
log.txtPatternPolicy=%d{yyyy-MM-dd HH:mm:ss:SSS} [%thread] %-5level %C{36} %M %L - %m %n

  第二步:新建一个logger-config.xml 配置文件,路径:resource/logger-config.xml;

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<!-- 引入配置文件 -->
<property resource="application.properties"/>
<!-- %m输出的信息,%p日志级别,%t线程名,%d日期,%c类的全名,%i索引【从数字0开始递增】 --> <!-- 定义控制台输出格式 -->
<!-- appender(附加):是 configuration 的子节点,是负责写日志的组件 -->
<!--ConsoleAppender :是将信息输出到控制台-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender" >
<encoder>
<!-- patter(模式)-->
<!-- %d{pattern}日期
%m或者%msg为信息
%M为method
%L为行号
%thread线程名称
%n换行
%-5level %C{length} | %class{length} %c {length } | %lo {length } | %logger {length }
输出日志的logger名,可有一个整形参数,功能是缩短logger名,设置为0表示只输入logger最右边点符号之后的字符串。 Conversion specifier Logger name Result
-->
<pattern>${log.txtPatternPolicy}</pattern>
<charset>UTF-8</charset>
</encoder>
</appender> <!-- 配置log 文件生成策略 -->
<!-- RollingFileAppender: 符合定义条件后,将会重新新建文件进行记录 -->
<appender name="server" class="ch.qos.logback.core.rolling.RollingFileAppender"> <File>${log.fileBackupPath}${log.fileName}</File>
<!-- TimeBasedRollingPolicy : 是一种基本的滚动策略,会根据时间来进行制定策略,既负责滚动,也负责触发-->
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- fileNamePattern: 文件命名模式 -->
<fileNamePattern>${log.fileBackupPath}${log.backupFileNamePolicy}</fileNamePattern>
<!-- 文件存在时间 -->
<maxFileSize>${log.fileSize}</maxFileSize>
<maxHistory>${log.history}</maxHistory>
<totalSizeCap>${log.totalSize}</totalSizeCap>
</rollingPolicy >
<encoder>
<!-- pattern : 用来定义log 日志文件的输入格式 -->
<pattern>
${log.txtPatternPolicy}
</pattern>
<charset>UTF-8</charset>
</encoder>
</appender> <logger name="org.hibernate.type.descriptor.sql.BasicBinder" level="TRACE" />  
<logger name="org.hibernate.type" level="TRACE" />
<logger name="org.hibernate.type.descriptor.sql.BasicExtractor" level="DEBUG" />  
<logger name="org.hibernate.engine.QueryParameters" level="DEBUG" />  
<logger name="org.hibernate.engine.query.HQLQueryPlan" level="DEBUG" /> <!-- 日志级别 -->
<!-- 级别依次为【从高到低】:FATAL > ERROR > WARN > INFO > DEBUG > TRACE -->
<root level="INFO">
<appender-ref ref="console"/>
<appender-ref ref="server"/>
</root> </configuration>

  

  第三步:需要在 application.properties 文件中,配置slf4j 关联本地自己的配置信息,如果不关联,那就不会加载自己的配置信息了。

#最后,引用配置好的logger 配置文件
logging.config=classpath:config/logger-config.xml

效果:

  1.启动SpringBoot:

  2.生成本地 log 文件:当前文件、备份文件

 

  3.server.log 中的写入文件:

ByeBye...

SpringBoot 整合 slf4j 日志打印的更多相关文章

  1. SpringBoot整合Slf4j+logback日志框架

    一.Slf4j简单介绍与优势 1.介绍 Slf4j的全称是Simple Loging Facade For Java(Java简单日志门面),它仅仅是一个为Java程序提供日志输出的统一接口,并不是一 ...

  2. Springboot整合log4j2日志全解

    目录 常用日志框架 日志门面slf4j 为什么选用log4j2 整合步骤 引入Jar包 配置文件 配置文件模版 配置参数简介 Log4j2配置详解 简单使用 使用lombok工具简化创建Logger类 ...

  3. SpringBoot整合Logback日志框架配置全解析

    目录 本篇要点 一.Logback日志框架介绍 二.SpringBoot与Logback 1.默认日志格式 2.控制台输出 3.文件输出 4.日志级别 5.日志组 6.自定义log配置 三.logba ...

  4. 自定义springboot - starter 实现日志打印,并支持动态可插拔

    1. starter 命名规则: springboot项目有很多专一功能的starter组件,命名都是spring-boot-starter-xx,如spring-boot-starter-loggi ...

  5. springBoot项目配置日志打印管理(log4j2)

    1.修改pom文件引用log4j2相关jar包 依赖代码: <!-- log4j2 start --><!-- Spring Boot log4j2依赖 --><depe ...

  6. SpringBoot整合+logback日志配置

    本次演示的代码结构如下,基于maven,整合SpringBoot.Spring.Mybaits的SSM框架.同时测试logback日志框架的使用及配置. 1.创建maven工程,修改pom.xml文件 ...

  7. SpringBoot+logback实现日志打印

    logback介绍 logback是一款开源的日志框架,内核重写了,是基于log4j基础进行改良的.其官网为logback.qos.ch.logback在性能上有很大提升,拥有更多特性. logbac ...

  8. SpringBoot整合log4j日志框架

    Spring Boot 2.x默认使用Logback日志框架,要使用 Log4j2必须先排除 Logback. 加入修改依赖 <dependency> <groupId>org ...

  9. SpringBoot整合logback日志框架

    在resource下创建一个名称为 logback-spring.xml文件 <configuration> <!--日志文件夹存放的名称--> <contextName ...

随机推荐

  1. yii2 Html::a

    Html::a($text,$url = null,$options = []) $url 可以直接是字符串 // An empty string. This will return the curr ...

  2. 优秀前端工程师必备: (总结) 清除原生ios按钮样式

    写移动端的web开发时, 需要清除IOS本身的各种样式: 1.消除ios按钮原生样式, 给按钮加自定义样式: input[type="button"], input[type=&q ...

  3. URAL 1698. Square Country 5(记忆化搜索)

    题目链接 题意 : 自守数的定义:如果某个数的平方的末尾几位数等于这个数,那么就称这个数为自守数.例如5*5=25,则5就是自守数.让你求不超过n位的自守数有多少 思路 : 实际上,自守数还有两个性质 ...

  4. python之CSV文件格式

    1.csv文件是以一些以逗号分隔的值 import csv filename = "wenjian.csv" with open(filename) as f: reader = ...

  5. C# 时间戳的生成

    /**        * 生成时间戳,标准北京时间,时区为东八区,自1970年1月1日 0点0分0秒以来的秒数         * @return 时间戳        */        publi ...

  6. ArrayList动态数组System.Collections命名空间下

    using System.Collections; namespace myspace { class myclass { ArrayList myList=new ArrayList(); } }

  7. Android-显示意图和隐式意图

    显示意图,一般情况下是用于,APP应用自身:组件(Activity,Service,...) 与 组件(Activity,Service,...) 的激活调用: 显示意图,是可以看得到,明确激活哪一个 ...

  8. 7z文件格式及其源码的分析(二)

    这是第二篇, 第一篇在这里: 这一篇开始分析7z的源码结构. 一. 准备工作: 1. 源码下载: 可以从官方中文主页下载:http://sparanoid.com/lab/7z/. 为了方便, 这里直 ...

  9. C# Log4.Net日志组件的应用系列(一)

    引言 Log4Net应该可以说是.NET中最流行的开源日志组件了.在各种项目框架中可以说是必不可少的组成部分.个人认为Log4Net有下面几个优点: 1. 使用灵活,它可以将日志分不同的等级,以不同的 ...

  10. luogu1357花园(矩阵运算)(状压DP)

    不得不说本蒻做这个题目的时候内心是很蒙蔽的qwq 推了规律找错了结果还没有暴力的分数高qwq...... 开数组\(f[i][j]\)来记录前i个花圃,(这里运用到状压的思想)其中最近的m个的状态(二 ...