如何实现Spring Boot中打印接口调用日志的示例代码?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1750个文字,预计阅读时间需要7分钟。
目录+概述+方案思路+封装HttpServletRequest请求+通过过滤器传递可重复读请求+记录入参日志+实现入参记录拦截器+注册拦截器+记录返回日志+概述+请求日志几乎涵盖所有大型企业级项目
目录
- 概述
- 方案思路
- 封装HttpServletRequest请求
- 把可重复读请求体通过过滤器往下传
- 记录入参日志
- 实现入参记录拦截器
- 注册拦截器
- 记录返参日志
概述
请求日志几乎是所有大型企业级项目的必要的模块,请求日志对于我们来说后期在项目运行上线一段时间用于排除异常、请求分流处理、限制流量等。
请求日志一般都会记录请求参数、请求地址、请求状态(Status Code)、SessionId、请求方法方式(Method)、请求时间、客户端IP地址、请求返回内容、耗时等等。如果你得系统还有其他个性化的配置,也可以完成记录。
记录请求参数时,由于servlet.getInputStream的数据只能读取一次,因此需要先把数据缓存下来,构造返回流,保证之后的Controller可以正常读取到请求体的数据。
方案思路
- 封装HttpServletRequest请求类,改类在构造方法中将请求的输入流中的数据缓存了起来,保证之后的处理可以重复读取输入流中的数据。
本文共计1750个文字,预计阅读时间需要7分钟。
目录+概述+方案思路+封装HttpServletRequest请求+通过过滤器传递可重复读请求+记录入参日志+实现入参记录拦截器+注册拦截器+记录返回日志+概述+请求日志几乎涵盖所有大型企业级项目
目录
- 概述
- 方案思路
- 封装HttpServletRequest请求
- 把可重复读请求体通过过滤器往下传
- 记录入参日志
- 实现入参记录拦截器
- 注册拦截器
- 记录返参日志
概述
请求日志几乎是所有大型企业级项目的必要的模块,请求日志对于我们来说后期在项目运行上线一段时间用于排除异常、请求分流处理、限制流量等。
请求日志一般都会记录请求参数、请求地址、请求状态(Status Code)、SessionId、请求方法方式(Method)、请求时间、客户端IP地址、请求返回内容、耗时等等。如果你得系统还有其他个性化的配置,也可以完成记录。
记录请求参数时,由于servlet.getInputStream的数据只能读取一次,因此需要先把数据缓存下来,构造返回流,保证之后的Controller可以正常读取到请求体的数据。
方案思路
- 封装HttpServletRequest请求类,改类在构造方法中将请求的输入流中的数据缓存了起来,保证之后的处理可以重复读取输入流中的数据。

