如何打印 springboot 框架中 接收请求的日志
在 Spring Boot 框架中,您可以使用日志来记录接收请求和发送响应的详细信息。Spring Boot 默认使用 SLF4J(Simple Logging Facade for Java)作为日志抽象层,并支持多种日志实现,如 Logback、Log4j2 等。以下是一种常见的方法来打印请求和响应的日志:
- 添加相关依赖:确保您的项目中已经包含了适当的日志依赖。对于使用 Logback 作为日志实现的 Spring Boot 项目,通常需要以下依赖:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
如果您使用其他日志实现,例如 Log4j2,您需要相应地添加相关的依赖。
- 配置日志级别:在 application.properties 或 application.yml 文件中,您可以设置日志级别来控制日志的详细程度。例如,设置如下的属性来将日志级别设置为 DEBUG:
propertis 格式:
logging.level.org.springframework.web: DEBUG
yaml 格式
logging:level:org.springframework.web: DEBUG
这将使得 Spring Web 相关的日志以 DEBUG 级别进行记录。
- 打印请求和响应:您可以使用
org.springframework.web.filter.CommonsRequestLoggingFilter类来打印请求和响应的详细信息。在您的配置类中,添加以下 Bean 定义:
import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.filter.CommonsRequestLoggingFilter;@Configurationpublic class RequestLoggingConfig {@Beanpublic CommonsRequestLoggingFilter requestLoggingFilter() {CommonsRequestLoggingFilter filter = new CommonsRequestLoggingFilter();filter.setIncludeQueryString(true);filter.setIncludePayload(true);filter.setMaxPayloadLength(10000);filter.setIncludeHeaders(false);filter.setAfterMessagePrefix("REQUEST DATA : ");return filter;}}
该配置定义了一个名为 requestLoggingFilter 的 Bean,它将打印请求的参数和负载。您可以根据需要调整这些配置属性。
- 运行应用程序:现在,当您运行 Spring Boot 应用程序时,您将看到来自 CommonsRequestLoggingFilter 的请求日志输出。
请注意,打印详细的请求和响应信息可能会导致日志文件变得很大,因此请谨慎使用,并根据实际需求调整日志级别和输出内容。
相关文章:
如何打印 springboot 框架中 接收请求的日志
在 Spring Boot 框架中,您可以使用日志来记录接收请求和发送响应的详细信息。Spring Boot 默认使用 SLF4J(Simple Logging Facade for Java)作为日志抽象层,并支持多种日志实现,如 Logback、Log4j2 等。以下是一种常见…...
JVM的内存区域划分
JVM即Java虚拟机,是Java实现跨平台交互能力的核心,Java编译后的.class文件,就是通过虚拟机和操作系统进行交互的; 常见的虚拟机有:JVM、VMwave、Virtual Box,目前最主流使用的JVM是HotSpot VM;…...
YOLOv9有效改进|使用动态蛇形卷积Dynamic Snake Convolution
专栏介绍:YOLOv9改进系列 | 包含深度学习最新创新,主力高效涨点!!! 一、改进点介绍 使用ICCV2023中的动态蛇形卷积替换YOLOv9网络中的Conv模块。 二、Dynamic Snake Convolution模块详解 2.1 模块简介 应用场景&#x…...
设计模式学习笔记 - 设计原则 - 1.单一职责原则
前言 前面我们提到过 SOLID 原则,实际上 SOLID 由 5 个设计原则组成,分别是:单一职责原则、开闭原则、里氏替换原则、接口隔离原则和依赖反转原则。它们分别对应 SLOID 中的 S、O、L、I、D 这 5 个英文字母。 今天来学习下 SOLID 原则中的第…...
飞天使-学以致用-devops知识点4-SpringBoot项目CICD实现(实验失败,了解大概流程)
文章目录 代码准备创建jenkins 任务测试推送使用项目里面的jenkinsfile 进行升级操作 文字版本流程项目构建 代码准备 推送代码到gitlab 代码去叩叮狼教育找 k8s 创建jenkins 任务 创建一个k8s-cicd-demo 流水线任务 将jenkins 里面构建时候的地址还有token, 给到…...
使用HTML5画布(Canvas)模拟图层(Layers)效果
使用HTML5画布(Canvas)模拟图层(Layers)效果 在图形处理和计算机图形学中,图层(Layers)是指将图像分成不同的可独立编辑、组合和控制的部分的技术或概念。每个图层都可以包含不同的图形元素、效…...
违背祖训,微软骚操作强制用户更新至 Win 11 23H2
话说,大伙儿有让 Windows 操作系统一直保持最新版习惯吗? 根据以往惯例,Windows 系统更新是个比较玄学的存在,谁也不能保证随手更新后会不会出现什么奇葩 Bug。 因此对于不少同学来说,Windows 更新到一个稳定版本后&a…...
MISRA C++ 2023指南:您需要了解的一切
MISRA C 2023可以帮助使用现代C语言的组织开发安全关键型软件。使用新的MISRA标准,开发人员可以通过确保和记录其软件应用程序的MISRA合规性,满足IEC 6108或ISO 26262等功能安全标准给出的静态分析要求。 什么是MISRA C2023? 以便使用C17进行安全可靠…...
Vue:【亲测可用】父组件数组包对象,传给子组件对象,子组件修改属性(字段)后,父组件没有更新
场景:vue中父组件数组包对象,传给子组件对象,子组件修改属性(字段)后,父组件没有更新 代码: # 父组件 <div v-for"(object, name, index) in arr" :key"index"><…...
hbase学习十:客户端实现与Meta表解析
1、客户端实现 hbase社区的客户端一般是java客户端。 HBase也支持Shell交互式客户端。Shell客户端实质是用JRuby(用Java编写的Ruby解释器,方便Ruby脚本跑在JVM虚拟机上)脚本调用官方HBase客户端来实现的。因此,各种客户端的核心实现都在社区Java版本客户端上。 客户端访…...
《OpenScene: 3D Scene Understanding with Open Vocabularies》阅读笔记1
传统的3D场景理解方法依赖于带标签的3D数据集,用于训练一个模型以进行单一任务的监督学习。我们提出了OpenScene,一种替代方法,其中模型在CLIP特征空间中预测与文本和图像像素共同嵌入的3D场景点的密集特征。这种零样本方法实现了与任务无关的训练和开放词汇查询。例如,为了…...
数据结构 - Trie树(字符串统计、最大异或对)
文章目录 前言Part 1:Trie字符串统计1.题目描述输入格式输出格式数据范围输入样例输出样例 2.算法 Part 2:最大异或对1.题目描述输入格式输出格式数据范围输入样例输出样例 2.算法 前言 本篇博客将介绍Trie树的常见应用,包括:Trie…...
2. vue 工程创建
1. 基于 vite创建 官方文档: https://v3.cn.vuejs.org/guide/installation.html#vite vite官网: https://vitejs.cn 使用vite创建的优势: 开发环境中,无需打包操作,可快速的冷启动。轻量快速的热重载(HMR)。真正的按需编译,不再…...
2024绿色能源、城市规划与环境国际会议(ICGESCE 2024)
2024绿色能源、城市规划与环境国际会议(ICGESCE 2024) 一、【会议简介】 随着全球气候变化和环境问题日益严重,绿色能源和可持续发展已成为全球关注的焦点。本次会议旨在汇聚全球在绿色能源、城市规划与环境领域的专家、学者和实践者,共同探讨和分享关于…...
0门槛电子画册制作
电子画册制作,门槛低至零,也可以制作出如此精美的电子画册吗?别担心,这个问题早已解决,今天就教你如何0门槛制作电子画册。 选择合适的企业宣传册制作软件,如FLBOOK在线制作电子杂志平台等。这个工具提供…...
C语言----冒泡排序进阶
冒泡排序大家应该到写过吧。但大家可能知道到的冒泡排序有两种方法。而我呢,最近学习到了另外一种方法,现在知道三种方法了。所以想与大家分享一下。但是缺点是第三种是第二种的自实现版。第一种就是我们平常写的普通冒泡排序。第二种就是qsort。第三种就…...
【机器学习】实验5,AAAI 会议论文聚类分析
本次实验以AAAI 2014会议论文数据为基础,要求实现或调用无监督聚类算法,了解聚类方法。 任务介绍 每年国际上召开的大大小小学术会议不计其数,发表了非常多的论文。在计算机领域的一些大型学术会议上,一次就可以发表涉及各个方向…...
安卓虚拟机ART和Dalvik
目录 一、JVM和Dalvik1.1 基于栈的虚拟机字节码指令执行过程 1.2 基于寄存器的虚拟机 二、ART与Dalvikdex2aotAndroid N的运作方式 三、总结 一、JVM和Dalvik Android应用程序运行在Dalvik/ART虚拟机,并且每一个应用程序对应有一个单独的Dalvik虚拟机实例。 Dalvik…...
OPENWRT本地局域网模拟域名多IP
本地配置MINIO服务时,会遇到域名多IP的需求。当某一个节点失效时,可以通过域名访问平滑过渡到其它的节点继续服务。 【MINIO搭建过程略】 搭建完毕后,有4个节点,对应的docker搭建命令: docker run --nethost --rest…...
今日学习总结2024.3.2
最近的学习状态比较好,感觉非常享受知识进入脑子的过程,有点上头。 实验室一个星期唯一一天的假期周六,也就是今天,也完全不想放假出去玩啊,在实验室泡了一天。 很后悔之前胆小,没有提前投简历找实习&…...
深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...
uniapp中使用aixos 报错
问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...
GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...
【网络安全】开源系统getshell漏洞挖掘
审计过程: 在入口文件admin/index.php中: 用户可以通过m,c,a等参数控制加载的文件和方法,在app/system/entrance.php中存在重点代码: 当M_TYPE system并且M_MODULE include时,会设置常量PATH_OWN_FILE为PATH_APP.M_T…...
HubSpot推出与ChatGPT的深度集成引发兴奋与担忧
上周三,HubSpot宣布已构建与ChatGPT的深度集成,这一消息在HubSpot用户和营销技术观察者中引发了极大的兴奋,但同时也存在一些关于数据安全的担忧。 许多网络声音声称,这对SaaS应用程序和人工智能而言是一场范式转变。 但向任何技…...
软件工程 期末复习
瀑布模型:计划 螺旋模型:风险低 原型模型: 用户反馈 喷泉模型:代码复用 高内聚 低耦合:模块内部功能紧密 模块之间依赖程度小 高内聚:指的是一个模块内部的功能应该紧密相关。换句话说,一个模块应当只实现单一的功能…...
