SpringBoot学习笔记:日志框架——SL4J

快速开始

说明

  SpringBoot底层选用SLF4J和LogBack日志框架。

  

SLF4J的使用

SpringBoot的底层依赖关系

1.SpringBoot底层使用Slf4j+LogBack的方式进行日志记录

  

2.SpringBoot将其他日志框架替换成了SLF4J。

  

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

  比如SpringBoot基于Spring实现,但是将Spring的默认日志框架移除了。

  1. <dependency>
  2. <groupId>org.springframework</groupId>
  3. <artifactId>spring‐core</artifactId>
  4. <exclusions>
  5. <exclusion>
  6. <groupId>commons‐logging</groupId>
  7. <artifactId>commons‐logging</artifactId>
  8. </exclusion>
  9. </exclusions>
  10. </dependency>

  SpringBoot能自动适配所有的日志,而且底层使用slf4j+logback的方式记录日志,引入其他框架的时候,只需要把这个框架依赖的日志框架排除掉即可;

默认设置

SpringBoot默认的情况下已经帮我们配置好了日志

  1. //记录器
  2. Logger logger = LoggerFactory.getLogger(getClass()); @Test
  3. public void contextLoads() {
  4. //日志的级别;
  5. //由低到高 trace<debug<info<warn<error //可以调整输出的日志级别;日志就只会在这个级别以以后的高级别生效
  6. logger.trace("这是trace日志...");
  7. logger.debug("这是debug日志..."); //SpringBoot默认给我们使用的是info级别的,没有指定级别的就用SpringBoot默认规定的级别;root
  8. logger.info("这是info日志...");
  9. logger.warn("这是warn日志...");
  10. logger.error("这是error日志...");
  11. }  

修改默认配置

  1. logging.level.com.atguigu=trace
  2.  
  3. #logging.path=
  4. # 不指定路径在当前项目下生成springboot.log日志
  5. # 可以指定完整的路径;
  6. #logging.file=G:/springboot.log
  7.  
  8. # 在当前磁盘的根路径下创建spring文件夹和里面的log文件夹;使用 spring.log 作为默认文件
  9. logging.path=/spring/log
  10.  
  11. # 在控制台输出的日志的格式
  12. logging.pattern.console=%d{yyyyMMdd}[%thread]%‐5level%logger{50}‐%msg%n
  13. # 指定文件中日志输出的格式
  14. logging.pattern.file=%d{yyyyMMdd}===[%thread]===%‐5level===%logger{50}====%msg%n

关于file与path的说明:

两者不可同时生效,并且相互冲突,具体情况如下表格所示:

关于日期输出格式的说明:

  1. 日志输出格式: %d表示日期时间,
  2. %thread表示线程名,
  3. %‐5level:级别从左显示5个字符宽度
  4. %logger{50} 表示logger名字最长50个字符,否则按照句点分割。 %msg:日志消息,
  5. %n是换行符
  6. ‐‐>
  7. %d{yyyyMMdd HH:mm:ss.SSS} [%thread] %‐5level %logger{50} %msg%n

指定配置

 给类路径下放上每个日志框架自己的配置文件即可;SpringBoot就不使用他默认配置的了

SpringBoot学习笔记(13):日志框架的更多相关文章

  1. CUBRID学习笔记 13 日志文件

    欢迎转载 ,转载时请保留作者信息.本文版权归本人所有,如有任何问题,请与我联系wang2650@sohu.com . 过错 CUBRID Broker Log Files  可以理解为数据库中间件日志 ...

  2. SpringBoot学习笔记(13)----使用Spring Session+redis实现一个简单的集群

    session集群的解决方案: 1.扩展指定server 利用Servlet容器提供的插件功能,自定义HttpSession的创建和管理策略,并通过配置的方式替换掉默认的策略.缺点:耦合Tomcat/ ...

  3. SpringBoot学习笔记

    SpringBoot个人感觉比SpringMVC还要好用的一个框架,很多注解配置可以非常灵活的在代码中运用起来: springBoot学习笔记: .一.aop: 新建一个类HttpAspect,类上添 ...

  4. go语言,golang学习笔记2 web框架选择

    go语言,golang学习笔记2 web框架选择 用什么go web框架比较好呢?能不能推荐个中文资料多的web框架呢? beego框架用的人最多,中文资料最多 首页 - beego: 简约 & ...

  5. SpringBoot学习笔记(4):添加自定义的过滤器

    SpringBoot:学习笔记(4)——添加自定义的过滤器 引入自定义过滤器 SpringBoot提供的前端控制器无法满足我们产品的需求时,我们需要添加自定义的过滤器. SpringBoot添加过滤器 ...

  6. SpringBoot学习笔记(8):事物处理

    SpringBoot学习笔记(8):事物处理 快速入门 在传统的JDBC事务代码开发过程中,业务代码只有一部分,大部分都是与JDBC有关的功能代码,比如数据库的获取与关闭以及事务的提交与回滚.大量的t ...

  7. SpringBoot学习笔记:Swagger实现文档管理

    SpringBoot学习笔记:Swagger实现文档管理 Swagger Swagger是一个规范且完整的框架,用于生成.描述.调用和可视化RESTful风格的Web服务.Swagger的目标是对RE ...

  8. SpringBoot学习笔记:Redis缓存

    SpringBoot学习笔记:Redis缓存 关于Redis Redis是一个使用ANSI C语言编写的免费开源.支持网络.可基于内存亦可以持久化的日志型.键值数据库.其支持多种存储类型,包括Stri ...

  9. SpringBoot学习笔记:读取配置文件

    SpringBoot学习笔记:读取配置文件 配置文件 在以往的项目中,我们主要通过XML文件进行框架配置,业务的相关配置会放在属性文件中,然后通过一个属性读取的工具类来读取配置信息.在SpringBo ...

随机推荐

  1. 2017.2.21 Java中正则表达式的学习及示例

    学习网站:菜鸟教程 http://www.runoob.com/java/java-regular-expressions.html 1 正则表达式的基本使用 (1)类 正则表达式并不仅限于某一种语言 ...

  2. Openfire 4.1.2 DOWNLOADS

    DOWNLOADS  Source Code Openfire 4.1.2 http://www.igniterealtime.org/downloads/ http://download.ignit ...

  3. 浅谈对TDD的看法

    程序猿对TDD这个词一定不陌生.近几年比較火.英文全称Test-Driven Development,測试驱动开发. 它要求在编写某个功能的代码之前先编写測试代码,然后仅仅编写使測试通过的功能代码,通 ...

  4. robotframe使用之滚动条

    方法一:Excute JavaScript window.scrollTo(0,document.body.scrollHeight); 方法二:Execute javascript document ...

  5. 【阿里云】Windows2008 FTP配置指南

    云服务器默认使用Windws 2008 IIS 中自带的FTP服务器.    1.添加FTP帐号    A. 选择[服务管理器]--[配置]--[本地用户和组]--[用户]:在空白处右键选择[新用户] ...

  6. Objective-C 执行AppleScript脚本

    在Objective-C里事实上也能够执行AppleScript 第一种方式是Source 将脚本写到变量字符串里 NSAppleEventDescriptor *eventDescriptor = ...

  7. modelsim-altera IP核仿真

    modelsim 仿真fifo时出现 Instantiation of 'scfifo' failed. The design unit was not found. 2012-07-21 13:27 ...

  8. Spring IOC源码分析之-刷新前的准备工作

    目录 ClassPathXmlApplicationContext的注册方式 加载父子容器 配置路径解析 容器刷新 刷新容器之刷新预处理 ClassPathXmlApplicationContext的 ...

  9. 使用java+TestNG进行接口回归测试

    TestNG是一个开源自动化测试框架,“NG”表示下一代(Next Generation的首字母). TestNG类似于JUnit(特别是JUnit 4),但它不是JUnit框架的扩展,相较于Juni ...

  10. requestWindowFeature使用详解

    requestWindowFeature可以设置的值有: // 1.DEFAULT_FEATURES:系统默认状态,一般不需要指定        // 2.FEATURE_CONTEXT_MENU:启 ...