springboot支付项目之日志配置
日志框架
本节主要内容:
1:常见的几种日志框架
2:Logback的使用
3:怎么配置info和error级别日志到不同文件中并且按照日期每天一个文件。
以上几个框架可以分类如下:
SLF4J和Logback的使用
日志级别:
级别越大越严重。
一:Java类中使用日志两种方式:
方式一:在每个类中添加日志对象:
private final Logger logger = LoggerFactory.getLogger(LoggerTest.class);
方法二:使用lombok插件:
在pom.xml文件中添加lombok依赖:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
然后再类上面使用@slf4j注解
推荐使用第二种,注解方式。这样就不用再每个类中添加了。
二:变量的打印
方式一:使用字符串+的方式。
直接使用字符串+的。如果变量多,+就需要很多了。
方式二:使用占位符的方式。
两个运行的结果:
推荐使用第二种,这样一看及明白。
Logback的配置
两种配置方式:
application.yml和logback-spring.xml
也就是一种基于yml文件一种基于xml文件配置的
来看下项目中经常遇到的日志需求:
区分info和error日志;每天产生一个日志文件。
方式一:再yml文件中配置
我们可以看到,logging相关配置还很多的。如console打印的日志格式、日期格式、文件、日志级别、日志最大大小等等。都可以配置的。
如:我们配置在控制台输出时间-信息换行。这个怎么配置呢?
查看运行结果:
配置日志输出位置:
运行后,可以在C盘下看到一个aa文件夹,打开就是日志文件了。如下图:
默认日志文件名称是spring.log。如果想修改成自己的可以使用file。如下图
运行后:
修改日志级别:
日志级别还可以绑定到指定的类上面。如:
第二种方式:使用xml文件配置
1:控制台输出:
2:根据不同日志级别输出到不同日志文件中。文件名带上日期
可以看到,文件滚动方式有很多,可以安装大小和时间、可以按照时间的。如下图:
配置后文件如下:
基于XML配置的所有配置信息:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!-- 控制台输入日志格式配置-->
<appender name="consolelogg" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>
%d -%msg%n
</pattern>
</layout>
</appender>
<!-- info日志 每天一个日志文件配置-->
<appender name="infoFileLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>DENY</onMatch>
<onMismatch>ACCEPT</onMismatch>
</filter>
<encoder>
<pattern>
%msg%n
</pattern>
</encoder>
<!-- 配置日志滚动策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 文件路径.文件名称中带有日期-->
<fileNamePattern>c:/aa/info.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>ERROR</level>
</filter>
<encoder>
<pattern>
%msg%n
</pattern>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--路径-->
<fileNamePattern>c:/aa/error.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<root level="info">
<appender-ref ref="consolelogg"/>
<appender-ref ref="infoFileLog"/>
<appender-ref ref="fileErrorLog"/>
</root>
</configuration>
各位有什么更好的日志框架介绍下呗
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
重磅发布- SpringBoot2.0前后端分离开发之用户身份认证实战(后端实现) 视频教程
概要介绍:历经两三个星期的时间,Debug亲自撸的 “SpringBoot2.x前后端分离开发之用户身份认证实战(后端实现)” 终于完成了。正如字面意思,本课程讲解的是在当前微服务、分布式系统架构时代,前后端在进行接口交互、服务与服务之间在进行接口交互时如何对用户的身份进行认证,即如何进行鉴权! 详细内容介绍: 本课程主要是跟各位小伙伴分享、介绍并实战了两大核心的用户身份认证(接口鉴权)模式,即基于Token的认证模式以及基于Session的认证模式,其中 基于Token的认证模式则主要介绍了三种核心、主流的认证模式,即基于Token+数据库、基于Token+缓存中间件Redis、基于Token+JWT的认证模式。 基于Session的认证模式也主要介绍了三种核心、主流的认证模式,即基于原生Spring Session以及Session共享的认证模式、基于Shiro Session的认证模式、基于Shiro + Redis 的Session共享认证模式 即课程的整体介绍如下图所示: 值得介绍的是,本课程在技术栈层面涵盖了“用户身份认证”、“接口鉴权”等业务场景 常用的大部分技术,包括S...
- 下一篇
IDEA 自定义方法注解模板
IDEA自定义方法注解模板 1、使用效果 /*** 计算交易费用* @Author wangjiafang* @Date 2019/9/11* @param feeComputeVo* @return*/@PostMapping("/v1/fee_compute")public ApiResponse feeCompute(@RequestBody @Valid FeeComputeVo feeComputeVo){return new ApiResponse();} 2、设置步骤-添加自定义方法 1、File->settings->Editor->Live Templates 2、击右上角的绿色+号,然后选择template group ,然后输入group的name,随便输入就好了:wangjiafang。然后点ok 3、选中刚才创建的wangjiafang,然后再次点击右侧的绿色+,这次选择的是第一个 Live Template 4、取名为* Live Template 定义的模板名是 * , 按/**, 然后space键盘, 方法注释就生产了,非常完美!; ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- Red5直播服务器,属于Java语言的直播服务器
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS6,7,8上安装Nginx,支持https2.0的开启