SpringBoot入门 - 添加Logback日志
创始人
2024-05-28 18:59:30
0
SpringBoot开发中如何选用日志框架呢? 出于性能等原因,Logback 目前是springboot应用日志的标配; 当然有时候在生产环境中也会考虑和三方中间件采用统一处理方式。

日志框架的基础

在学习这块时需要一些日志框架的发展和基础,同时了解日志配置时考虑的因素。

关于日志框架(日志门面)

Java日志库是最能体现Java库在进化中的渊源关系的,在理解时重点理解日志框架本身和日志门面,以及比较好的实践等。要关注其历史渊源和设计(比如桥接),而具体在使用时查询接口即可, 否则会陷入JUL(Java Util Log), JCL(Commons Logging), Log4j, SLF4J, Logback,Log4j2傻傻分不清楚的境地。

配置时考虑点

在配置日志时需要考虑哪些因素?
  • 支持日志路径,日志level等配置

  • 日志控制配置通过application.yml下发

  • 按天生成日志,当天的日志>50MB回滚

  • 最多保存10天日志

  • 生成的日志中Pattern自定义

  • Pattern中添加用户自定义的MDC字段,比如用户信息(当前日志是由哪个用户的请求产生),request信息。此种方式可以通过AOP切面控制,在MDC中添加requestID,在spring-logback.xml中配置Pattern。

  • 根据不同的运行环境设置Profile - dev,test,product

  • 对控制台,Err和全量日志分别配置

  • 对第三方包路径日志控制

实现范例

如下两个例子基本包含了上述的考虑点:

综合范例

  • application.yml

logging:level:root: debugpath: C:/data/logs/springboot-logback-demo
server:port: 8080
spring:application:name: springboot-logback-demo
debug: false
  • Spring-logback.xml


 %msg|%n "/>${LOG_MSG}${LOG_HOME}/all_${LOG_PREFIX}.log${LOG_DIR}/all_${LOG_PREFIX}%i.log${MAX_HISTORY}${MAX_FILE_SIZE}${LOG_MSG}ERRORDENYACCEPT${LOG_HOME}/err_${LOG_PREFIX}.log${LOG_DIR}/err_${LOG_PREFIX}%i.log${MAX_HISTORY}${MAX_FILE_SIZE}${LOG_MSG}

Profile 相关的配置可以参考:


      logs/springboot-logback-demo.%d{yyyy-MM-dd}.log   30        %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg%n      

在配置前可以参考如下文章

https://www.cnblogs.com/warking/p/5710303.html

示例源码

https://download.csdn.net/download/DeveloperFire/87519876

上一篇:找工作经验分享

下一篇:蚁群算法c++

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...