第五章 ,springboot 日志框架

第五章 ,springboot 日志框架第五章 ,springboot 日志框架

大家好,又见面了,我是你们的朋友全栈君。

一,选用SLF4j和logback

(注:spring框架默认使用的事JCL日志框架)

二,使用

1,如何在系统中使用slf4j(不同于log4j)

以后开发的时候,日志记录方法的调用,不应该直接调用日志的实现层,而是调用日志的抽象层里面的方法(也就是先biz层再dao层)

打开slf4j的首页,找到用户手册链接:

第五章 ,springboot 日志框架

有个案例,长下面这个样子:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class HelloWorld {
  public static void main(String[] args) {
    Logger logger = LoggerFactory.getLogger(HelloWorld.class);
    logger.info("Hello World");
  }
}

slf4j是属于抽象层,logback是实现层。


二,这里我们新建个spring initializr 工程。

然后打开pom.xml 

对下图位置右键:

第五章 ,springboot 日志框架

选择–》Diagrams–》show Dependencies 会显示各jar包的依赖关系(alt可放大看)

其中可以看到springboot使用的日志系统:

第五章 ,springboot 日志框架

所以

1,springboot底层也是使用slf4j+logback的方式进行日志记录

2,springboot也把其他的日志都替换成了slf4j

3,如果要引入其他框架,一定要把这个框架的默认的日志依赖移除掉

 


三,日志种类和日志等级

1, 

package com.liuxin.springboot;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith(SpringRunner.class)
@SpringBootTest
public class Springboot03LoggingApplicationTests {
    Logger logger = LoggerFactory.getLogger(getClass());

    //日志级别又低到高:trace<debug<info<warn<error
    @Test
    public void contextLoads() {
        logger.trace("trace日志");
        logger.debug("debug日志");
        logger.info("info日志");
        logger.warn("warn日志");
        logger.error("error日志");
    }

}

springboot默认使用的是info级别的,也就是上面案例只会输出后面三行

2,如在配置文件中设置日志级别,就用设定的,没有设定就用默认的,如下:

第五章 ,springboot 日志框架

这样再次运行就能打印所有日志了。

3,指定日志输出的文件

第五章 ,springboot 日志框架

这样就能在当前项目下创建一个springboot.log文件。

4,在日志中的输出格式:

logging.level.com.liuxin=trace

#指定日志的输出目录,默认根目录
#logging.file=springboot.log
#指定本地盘
#logging.file=F:/springboot.log

#在当前磁盘的跟目录下创建spring文件夹和里面的log文件,使用spring.log作为默认,如果这个项目在c盘,那么这个就会出现C:/srping/log
logging.path=/spring/log 
#指定控制台输出的格式     下面等号右边的含义以此是 %d:日期  %thread:线程号   %-5level:日志级别从左显示5个字符  
# %logger{50}:logger名字最长50个字符,否则安装句号分割   %msg:消息信息 %n:换行符
logging.pattern.console=%d{yyyy-MM-dd} [%thread] %-5level %logger{50} - %msg%n

#指定文件中日志输出的格式
logging.pattern.file=%d{yyyy-MM-dd} === [%thread] === %-5level %logger{50} === %msg%n

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/105996.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 鲸鱼优化算法与其他算法对比_鲸鱼优化算法百度百科

    鲸鱼优化算法与其他算法对比_鲸鱼优化算法百度百科文章目录一、理论基础1、鲸鱼优化算法2、鲸鱼优化算法的改进(1)自适应调整权重(2)自适应调整搜索策略(3)AWOA流程图二、仿真对比与分析三、参考文献四、Matlab仿真程序一、理论基础1、鲸鱼优化算法请参考这里。2、鲸鱼优化算法的改进(1)自适应调整权重由于WOA在优化求解的过程中,线性的惯性权重调整策略若选择不合适,将影响算法的收敛速度。因此,本文提出了一种根据当前鲸鱼种群分布情况来自适应改变权值的大小,公式如下:w=d1⋅(Piworst−Pibest)+d2⋅(xiupper−xilo

    2022年10月5日
    3
  • webstorm2021.1激活码(注册激活)

    (webstorm2021.1激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/ide…

    2022年3月29日
    566
  • 日本樱花免费docker部署教程

    点击查看视频教程樱花的注册地址:https://app.arukas.io/注册完登陆创建实例点击查看视频教程镜像选择:qiangweizhang/mysqlserver选择的镜像必须是dockerhub的参考线面信息填写表单增加一个端口映射3306(也是你将要使用的端口)mysql默认端口然后创建实例然后运行使用navicat…

    2022年4月4日
    67
  • MySQL 添加索引,删除索引及其用法[通俗易懂]

    MySQL 添加索引,删除索引及其用法[通俗易懂]原文:https://www.cnblogs.com/zz-tt/p/6609828.html一.索引的作用一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,所以查询语句的优化显然是重中之重。在数据量和访问量不大的情况下,mysql访问是非常快的,是否加索引对访问影响…

    2022年6月2日
    42
  • java女人_Java是一个事业成功的女人

    java女人_Java是一个事业成功的女人原标题:Java是一个事业成功的女人文/北京达内教育(微信号:bjtedu01)关注后免费可获得达内5天训练营,都是干货哦~Java是一个事业成功的女人。很多在她手下干过的人都感觉她的能力跟她的地位并不般配,她更多的是通过技巧打动了中层管理人员。你也许会认为她是很有智慧的人,你愿意跟随她。但你要准备好在数年里不断的听到“你用错了接口,你遗漏了一个分号”这样的责备。C++是Java的表姐。她在…

    2022年7月7日
    25
  • winscp登录主机拒绝_winscp_winscp连接被拒绝_winscp下载

    winscp登录主机拒绝_winscp_winscp连接被拒绝_winscp下载winscpwinscpItappearsthatyourbrowserdoesnotcomplywiththeW3Cwebstandardswhichdefinehowwebpagesareencoded,transmitted,andrendered.Thissitewouldlookmuchbetterinastandards-c…

    2022年9月17日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号