spring-boot - 如何在spring boot应用程序中将请求数据和响应数据存储到数据库中

标签 spring-boot

我正在努力存储请求数据和响应数据,如果在将响应发送回客户端时遇到任何异常,我也需要存储异常。

我的数据库表 将 ID,RequestData,ResponseData,Exception,TimeTakenToRespond

假设我有一个名为/athenticateUser 的端点,所以我的输入数据将是

RequestData :{"username":"mate","password":"swamy"}

ResponseData :{"FirstName":"mate","LastName":"swamy","Email":"manteswamy@gmail.com"}

像上面的方式一样,我需要存储所有请求数据和响应数据,如果有任何异常,同时将响应发送回客户端,我们也需要存储和 Web 服务时间响应。

由于我是 Spring Boot 的初学者,请逐步指导

最佳答案

虽然你可以写 Interceptors , Filters等为此。但不要这样做。

请尝试使用 Spring Boot 功能 Actuator用于追踪。它提供了开箱即用的 HTTP 请求登录。

有一个端点映射到 /trace/actuator/httptrace这将显示最近的 100 个 HTTP 请求。您可以自定义它以记录每个请求,或写入数据库。

您将需要 spring-boot-starter-actuator依赖性。

您也可以whitelist端点。

有关分步指南,您可以查看 this执行器教程。

关于spring-boot - 如何在spring boot应用程序中将请求数据和响应数据存储到数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61691673/

相关文章:

java - {Java} Vaadin 14 - 检测用户离开(关闭选项卡、f5 等)

java - 在 Spring Boot 中设置 eureka 服务器时出错

java - Spring Boot JPA 应用程序无法从 Spring Boot 2.0.2 启动,但可以在 Spring Boot 1.5.13 中正常运行

java - 如何为同一个 Feign 客户端接口(interface)的不同配置文件切换 2 个注释

Spring Boot,Spring MVC webjars 依赖项返回 404

java - 如何对 Spring @Bean CommandLineRunner 进行单元测试?

java - 如何在Spring Boot应用程序中正确使用log4j2

spring - 删除 Elasticsearch 响应中doc_count为零的存储桶

spring-boot - Spring Boots Gradle插件在启动脚本中忽略了applicationDefaultJvmArgs

java - 如何在Junit中的spring boot中访问使用@Mock初始化的静态变量