java http打印请求日志_spring打印http接口请求和响应

在程序日志中打印出接口请求和响应的内容是一个基本的技术需求。如果在每个接口中实现请求响应的日志打印,程序编写会很繁琐,我们可以利用spring提供的机制,集中处理接口请求响应的日志打印。 具体的代码参照 示例项目 https://github.com/qihaiyan/springcamp/tree/master/spring-rest-log-request-response

一、概述

基于spring提供的机制,有3种方法可以实现接口请求响应日志的打印,分别是CommonsRequestLoggingFilter、HandlerInterceptor、RequestBodyAdviceAdapter。

二、修改日志级别打印请求参数

通过设置 web 的日志级别为 DEBUG,spring会自己打印请求参数。该方法打印的内容覆盖了后面介绍的所有方法中日志的内容,如果不需要做定制打印,并且不介意打印的日志级别是DEBUG,那就足够用了。

logging:

level:

root: INFO

web: DEBUG

三、使用 CommonsRequestLoggingFilter 打印请求参数

CommonsRequestLoggingFilter的使用比较简单,只需要实现一个logFilter的bean即可。 只不过logFilter的日志级别是debug,需要在日志配置文件中,将CommonsRequestLoggingFilter类的日志级别设置为debug级别。 同时在生产环境的日志文件中打印debug日志不符合规范。

@Bean

public CommonsRequestLoggingFilter logFilter() {

CommonsRequestLoggingFil

你可能感兴趣的:(java,http打印请求日志)