1.导入pom依赖
<dependency> <groupId>org.zalando</groupId> <artifactId>logbook-core</artifactId> <version>${logbook.version}</version> </dependency> <dependency> <groupId>org.zalando</groupId> <artifactId>logbook-servlet</artifactId> <version>${logbook.version}</version> </dependency> <dependency> <groupId>org.zalando</groupId> <artifactId>logbook-httpclient</artifactId> <version>${logbook.version}</version> </dependency> <dependency> <groupId>org.zalando</groupId> <artifactId>logbook-spring-boot-starter</artifactId> <version>${logbook.version}</version> </dependency>2.在application.properties中配置显示方式
logbook.write.level=TRACE logbook.format.style=http3.在定义httpClient的bean中,加入拦截
@Autowired private LogbookHttpRequestInterceptor logbookHttpRequestInterceptor; @Autowired private LogbookHttpResponseInterceptor logbookHttpResponseInterceptor; /** * httpclient bean 的定义 * @return */ @Bean @ConditionalOnMissingBean(HttpClient.class) public HttpClient httpClient() { RequestConfig requestConfig = RequestConfig.custom() .setConnectTimeout(properties.getConnectTimeOut()) .setSocketTimeout(properties.getSocketTimeOut()).build();// 构建requestConfig HttpClient client = HttpClientBuilder.create().setDefaultRequestConfig(requestConfig) .setUserAgent(properties.getAgent()) .setMaxConnPerRoute(properties.getMaxConnPerRoute()) .setMaxConnTotal(properties.getMaxConnTotaol()) .addInterceptorFirst(logbookHttpRequestInterceptor) .addInterceptorFirst(logbookHttpResponseInterceptor) .build(); return client; }