关于@Slf4j日志的输出配置方式
最近项目要求,将日志输出到指定位置,方便以后查看,因为使用了lombok这个jar包,就用了lombok所带的日志功能,具体lombok的配置方式请自行百度配置,本人使用的是Springboot架构,可能会出现于架构自带的日志冲突,导致无法导出日志,可添加如下代码避免此问题:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-logging</artifactId></exclusion></exclusions></dependency>
1.在项目resource文件夹下创建logback-spring.xml,配置代码如下所示,文件命名尽量用XXX-spring.xml,为什么带spring,这个也是因为一篇文档里面看到,说是好解析,具体没深究;
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="10 seconds"><contextName>logback</contextName><conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" /><conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" /><conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" /><!-- 格式化输出:%date表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %msg:日志消息,%n是换行符--><property name="LOG_PATTERN" value="%date{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n" /><!-- 定义日志存储的路径,不要配置相对路径 --><property name="FILE_PATH" value="D:/log/spring-log.%d{yyyy-MM-dd}.%i.log" /><!-- 控制台输出日志 --><appender name="console" class="ch.qos.logback.core.ConsoleAppender"><!-- 日志级别过滤INFO以下 --><filter class="ch.qos.logback.classic.filter.ThresholdFilter"><level>INFO</level></filter><encoder><!-- 按照上面配置的LOG_PATTERN来打印日志 --><pattern>${LOG_PATTERN}</pattern></encoder></appender><!--每天生成一个日志文件,保存30天的日志文件。rollingFile用来切分文件的 --><appender name="rollingFile" class="ch.qos.logback.core.rolling.RollingFileAppender"><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><fileNamePattern>${FILE_PATH}</fileNamePattern><!-- keep 15 days' worth of history --><maxHistory>30</maxHistory><timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"><!-- 日志文件的最大大小 --><maxFileSize>2MB</maxFileSize></timeBasedFileNamingAndTriggeringPolicy><!-- 超出删除老文件 --><totalSizeCap>1GB</totalSizeCap></rollingPolicy><encoder><pattern>${LOG_PATTERN}</pattern></encoder></appender><!-- project default level --><logger name="net.sh.rgface.serive" level="ERROR" /><!-- 4. 最终的策略 --><!-- 4.1 开发环境:打印控制台--><springProfile name="dev"><logger name="com.sdcm.pmp" level="debug"/></springProfile><!-- 日志输出级别 --><root level="info"><appender-ref ref="CONSOLE" /><appender-ref ref="DEBUG_FILE" /><appender-ref ref="INFO_FILE" /><appender-ref ref="WARN_FILE" /><appender-ref ref="ERROR_FILE" /></root><!-- 4.2 生产环境:输出到文档<springProfile name="pro"><root level="info"><appender-ref ref="CONSOLE" /><appender-ref ref="DEBUG_FILE" /><appender-ref ref="INFO_FILE" /><appender-ref ref="ERROR_FILE" /><appender-ref ref="WARN_FILE" /></root></springProfile> -->
</configuration>
文件的配置的代码,都有注释,此次也不再写注释,
2.添加jar包:
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.16.20</version><scope>provided</scope></dependency>
,然后在所需类是上添加@Slf4j注释,在方法代码里面添加
logger.debug("debug");
logger.info("info");
logger.error("error");
logger.warn("warn");方法即可;
测试以后没问题:
关于@Slf4j日志的输出配置方式相关推荐
- log4cplus日志格式输出配置
layout是控制日志输出格式的 log4cplus.appender.R.layout=log4cplus::PatternLayout log4cplus.appender.R.layout.Co ...
- springboot日志配输出路径配置_SpringBoot日志配置详解
前言 记录应用系统曰志主要有三个原因 记录操作轨迹.监控系统运行状况.回溯系统故障.记录操作行为及操作轨迹数据,可以数据化地分析用户偏好,有助于优化业务逻辑,为用户提供个性化的服务.例如,通过 ac ...
- python配置日志的几种方式
使用的是logging模块,关于logging模块内容,可以看我的另一篇博客:https://www.cnblogs.com/kuxingseng95/p/9464347.html 作为开发者,我们一 ...
- 1.Slf4j使用log4j的配置参数、配置sl4j/log4j输出到不同的文件、案例
1.Slf4j使用log4j的配置参数 转自:https://blog.csdn.net/yx0628/article/details/83214387 slf4j,即简单日志门面(Simple Lo ...
- SpringBoot——slf4j+logback日志处理及配置详解
SpringBoot--sl4j+logback日志处理及配置详解 日志的级别 打印级别:ALL > TRACE > FATAL > DEBUG > INFO > WAR ...
- springboot日志配输出路径配置_Spring Boot 日志配置方法(超详细)
默认日志 Logback : 默认情况下,Spring Boot会用Logback来记录日志,并用INFO级别输出到控制台.在运行应用程序和其他例子时,你应该已经看到很多INFO级别的日志了. 从上图 ...
- slf4j日志的使用和配置
SLF4J,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统.按照官方的说法,SLF4J是一个用于日志系统的简单Fa ...
- logback日志配置(控制台日志、输出日志、错误日志)
logback日志配置(控制台日志.输出日志.错误日志) 一.logback.xml相关配置: <?xml version="1.0" encoding="UTF- ...
- 解决log4net独占日志文件的问题以及 log4net的各种输出配置(Appender)
摘至:http://www.cnblogs.com/jacktu/archive/2007/12/05/984487.html 由于log4net默认情况下会独占日志文件,该文件不能被File.Ope ...
最新文章
- 免费好用的Diff和Merge工具大总结
- postfix管理邮件队列的小程序
- 微信创始人张小龙的创业故事
- PHP的xdebug安装步骤以及遇到的坑
- js点击图片查看大图,并可以拖动,且滚动滑轮放大缩小
- 计算机线性输入录音原理,耳机输出的模拟信号-怎样把声音通过线路录入电脑?比方说,收音机的耳机输出孔,接线(串 爱问知识人...
- 深拷贝与浅拷贝Object.assign()
- java正则表达 w,超强变态的正则(\w)((?=\1\1\1)(\1))+讲解
- java运行时异常的特点是什么_java异常详解
- 修饰符new与override
- mybatis-plus 自定义UpdateWrapper(一)实现列自增
- excel导入sqlsever
- mysql命令分号_MySql常用命令:注意命令后面的分号!
- 【听课笔记】复旦大学遗传学_10肿瘤遗传学
- eclipse新建JSP页面报错:Multiple annotations found at this line解决方法
- 纯干货!埃森哲的大数据分析框架分享-part 1
- python字典改键_python修改字典键(key)的方法
- 【枚举算法】佩尔方程
- 禅宗公案节选(中国禅宗概述)
- 考研复试—专业课英语