springboot日志管理配置logback-spring.xml

小码农岁月      2022-04-20     105

关键词:

几种常见的日志

  1. Log4j:是最早的日志框架,是apach旗下的,可以单独使用,也可配合日志框架JCL使用;
  2. Log4j2:apach旗下的关于log4j的升级版;
  3. Logback:是基于slf4j接口实现的一套日志框架组件;(Logback是由log4j创始人设计的又一个开源日志组件。)
  4. JUL(java utillog):仿log4j实现的日志框架,是sun旗下的,(也就是在我们普遍使用的jdk中);
  5. Commons loggin:是一套日志接口(apache);
  6. Slf4j:也是一套日志接口; 

              Commons Logging和Slf4j是日志门面(门面模式是软件工程中常用的一种软件设计模式,也被称为正面模式、外观模式。它为子系统中的一组接口提供一个统一的高层接          口,使          得子系统更容易使用)。log4j和Logback则是具体的日志实现方案。可以简单的理解为接口与接口的实现,调用这只需要关注接口而无需关注具体的实现,做到解耦;
   比较常用的组合使用方式是Slf4j与Logback组合使用,Commons Logging与Log4j组合使用。

     下面是Slf4j与Logback使用:

Springboot 日志管理配置logback-spring.xml

(1).application.yml配置

1 # 日志目录
2 logging:
3   path: home/logs/
4   file: ${logging.path}springboot

(2).logback-spring.xml配置

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出 -->
 3 <!-- scan:当此属性设置为true时,配置文档如果发生改变,将会被重新加载,默认值为true -->
 4 <!-- scanPeriod:设置监测配置文档是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。
 5                  当scan为true时,此属性生效。默认的时间间隔为1分钟。 -->
 6 <!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
 7 
 8 <configuration debug="true">
 9     <!-- name的值是变量的名称,value的值时变量定义的值。通过定义的值会被插入到logger上下文中。定义后,可以使“${}”来使用变量。 -->
10     <!--<property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}/}spring.log}"/>-->
11     <property name="LOG_FILE" value="${LOG_FILE}"/>
12 
13     <!--1. 输出到控制台-->
14     <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
15         <encoder>
16             <pattern>%d{HH:mm:ss.SSS} %-5level %logger{36} [%line] - %msg%n</pattern>
17         </encoder>
18     </appender>
19 
20     <!--2. 输出到文档-->
21     <!-- 2.1 level为 DEBUG 日志,时间滚动输出  -->
22     <appender name="R" class="ch.qos.logback.core.rolling.RollingFileAppender">
23         <!-- 正在记录的日志文档的路径及文档名 -->
24         <!--<File>${LOG_FILE}</File>-->
25         <!--日志文档输出格式-->
26         <encoder>
27             <pattern>%d{HH:mm:ss.SSS} %-5level %logger{36} [%line] - %msg%n</pattern>
28         </encoder>
29         <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
30         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
31             <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.log
32             </fileNamePattern>
33             <maxHistory>15</maxHistory>
34         </rollingPolicy>
35     </appender>
36 
37     <logger name="noModule" level="info"/>
38     <logger name="org.codehaus" level="info"/>
39     <logger name="org.apache" level="info"/>
40     <logger name="org.springframework" level="info"/>
41     <logger name="druid.sql" level="info"/>
42     <logger name="com.alibaba" level="debug">
43         <appender-ref ref="stdout"/>
44     </logger>
45     <logger name="com.springboot" level="debug"/>
46     <root level="info">
47         <appender-ref ref="stdout"/>
48         <appender-ref ref="R"/>
49     </root>
50 </configuration>

(3).生成日志

Slf4j使用

1 (1) public final class InStockController {
2  
3      private static final Logger LOGGER = LoggerFactory.getLogger(InStockController.class);
4  }
5  
6 
7  
8 (2)  方法中
9   LOGGER.info("xxxxxxxx");

 

springboot.06.springboot日志管理(代码片段)

SpringBoot.06.SpringBoot日志管理SpringBoot日志介绍概念日志的级别日志的分类SpringBoot日志基本使用1.新建Module2.项目配置3.配置日志SpringBoot日志切割1.application.yml2.application-dev.yml3.logback-dev.xml4.测试SpringBoot日志介绍概念在SpringBoot框架中... 查看详情

springboot日志/页面处理实体类构建后台管理(代码片段)

springboot日志/页面处理、实体类构建、后台管理一、配置文件的编写1.配置文件2.导入依赖二、日志框架处理1.默认配置2.个性配置3.自动生成的日志文件三、页面处理1.控制器2.配置错误友好页面四、实体类构建1.创建持久层实体类... 查看详情

springboot日志管理配置logback-spring.xml

几种常见的日志Log4j:是最早的日志框架,是apach旗下的,可以单独使用,也可配合日志框架JCL使用;Log4j2:apach旗下的关于log4j的升级版;Logback:是基于slf4j接口实现的一套日志框架组件;(Logback是由log4j创始人设计的又一个开... 查看详情

springboot中的日志管理

本案例中可以了解,怎么配置日志的输出路径,输出格式(比如说zip格式),按日期进行划分(今天的日志输出为一个文件,明天的日志输出到另一个文件),在按日期划分的同时又按文件大小划分(比如说每天的日志记录很多... 查看详情

springboot动态日志管理(actuator)

参考技术A引入依赖配置文件添加management.endpoints.web.exposure.include=loggers之后访问http://localhost:8080/xxx/actuator/loggers即可看到每个文件的日志级别查看某个目录的日志级别http://localhost:8080/xxx/actuator/loggers](http://localhost:8080/rose-server/actu... 查看详情

重学springboot系列之日志框架与全局日志管理(代码片段)

重学SpringBoot系列之日志框架与全局日志管理日志框架的体系结构五花八门的日志工具包日志框架日志门面日志门面存在的意义日志框架选型日志级别常见术语概念解析logback日志框架配置application配置文件实现日志配置日志格式... 查看详情

springboot2中的默认日志管理与logback配置详解(代码片段)

SpringBoot在所有内部日志中使用CommonsLogging,但是对底层日志的实现是开放的。在SpringBoot生态中,为JavaUtilLogging、Log4J2和Logback这些常见的日志框架都提供了自动化配置组件,每种Logger都可以通过配置在控制台或者文件... 查看详情

基于springboot+security+redis权限管理系统,权限控制采用rbac

参考技术A用户管理提供用户的相关配置角色管理角色菜单进行权限的分配权限管理权限细化到接口菜单管理已实现菜单动态路由,后端可配置化,支持多级菜单定时任务整合Quartz做定时任务,加入任务日志,任务运行情况一目... 查看详情

springboot统一日志管理

Springboot中统一日志管理一、为什么要用日志?一般分为两个大类:操作日志和系统日志**操作日志:**用户在操作软件时记录下来的操作步骤,便于用户自己查看。主要针对的是用户。**系统日志:**系统日志是记录系统中硬件、... 查看详情

九,springboot-日志管理(logback)

 一,SpringBoot日志级别springboot默认使用的日志框架是LogBack,默认INFO级别。日志依赖:<dependency>  <groupId>org.springframework.boot</groupId>  <artifactId>spring-boot-starter-l 查看详情

springboot添加日志管理(代码片段)

一。近期自己的项目想要一个记录日志的功能,而springboot本身就内置了日志功能,然而想要输入想要的日志,并且输出到磁盘,然后按天归档,或者日志的切分什么的,自带的日志仅仅具有简单的功能,百度了一番,总结如下... 查看详情

springboot----springboot配置日志文件

今天介绍一下SpringBoot配置日志文件SpringBoot在所有的内部日志中使用CommonsLogging,但是默认配置也提供了对常用日志的支持,如JavaUtilLogging,Log4J,Log4J2和Logback。但是每种Logger都可以通过配置使用控制台或者文件输出日志内容。... 查看详情

日志管理,springboot

...og4j、log4j2、slf4j....2.日志门面:SLF4J;日志实现:Logback;SpringBoot:底层是Spring框架,Spring框架默认是用JCL;‘SpringBoot选用SLF4j和logback;3.SLF4j使用3.1如何在系统中使用SLF4j  https://www.slf4j. 查看详情

springboot:logback日志管理

Springboot默认使用的日志框架就是logback创建自定义的logback-spring.xml放在resources类目录下即可logback-spring.xml:<?xmlversion="1.0"encoding="UTF-8"?><!--日志级别从低到高分为TRACE<DEBUG<INFO<WARN< 查看详情

springboot日志配置

SpringBoot日志的配置如果不配置日志,默认配置是base.xml配置日志在resource目录下新建logback.xml<?xmlversion="1.0"encoding="UTF-8"?><configurationdebug="false"><!--定义日志文件的存储地址勿在LogBack的配置中使用相对路径--><propertyname 查看详情

springboot日志配置文件不生效

SpringBoot日志配置文件不生效是因为配置文件重复!!!SpringBoot项目中默认有一份日志配置文件,项目启动时先读取到了默认日志配置文件,没有读取resource目录中的配置文件,需要自定义日志信息的话需要在Springboot配置文件中... 查看详情

springboot日志配置

SpringBoot日志配置默认日志Logback:默认情况下,SpringBoot会用Logback来记录日志,并用INFO级别输出到控制台。在运行应用程序和其他例子时,你应该已经看到很多INFO级别的日志了。从上图可以看到,日志输出内容元素具体如下:时... 查看详情

springboot-日志配置(超详细)

SpringBoot-日志配置(超详细)更新日志:20170810更新通过application.yml传递参数到logback中。 SpringBoot-日志配置超详细默认日志Logback添加日志依赖控制台输出文件输出级别控制自定义日志配置根节点包含的属性子节点一root子节点二c... 查看详情