如何在 Spring Boot 中设置 enableLoggingRequestDetails='true'

Posted

技术标签:

【中文标题】如何在 Spring Boot 中设置 enableLoggingRequestDetails=\'true\'【英文标题】:How to set enableLoggingRequestDetails='true' in Spring Boot如何在 Spring Boot 中设置 enableLoggingRequestDetails='true' 【发布时间】:2019-05-12 09:53:54 【问题描述】:

我今天尝试调试我的应用程序,但 Spring Boot 控制台显示以下消息:

enableLoggingRequestDetails='false':请求参数和标头将被屏蔽,以防止潜在敏感数据的不安全记录

同时,我想知道应用程序中发生的一切。

所以我的问题是:如何在application.properties 中启用日志记录请求详细信息?

【问题讨论】:

spring.http.log-request-details=true 添加到您的application.properties。假设您在这里使用的是 Spring Boot 2.1。 @M.Deinum 你解决了它。请添加您的评论作为答案,以便我将其标记,这样其他人就可以轻松找到它。谢谢! @AdinduStevens 它工作正常,但我没有关于请求的任何信息......你需要配置其他东西吗? @Phhoste 您还需要将 Web 日志级别配置为 DEBUG 或任何更低级别:logging.level.web: DEBUG 【参考方案1】:

对于 spring boot v2.6.2,你可以使用这个: spring.mvc.log-request-details=true 并确保你也有 logging.level.org.springframework.web=DEBUG

【讨论】:

此答案已作为评论添加到已接受的答案中。【参考方案2】:

spring boot版本是2.2.6.RELEASE。下面这个配置项帮我解决了问题。spring.http.log-request-details=true

【讨论】:

谢谢。谁会想到会有这么多方法?【参考方案3】:

当使用 webflux 和 spring boot 2.3.0 时,可以设置以下属性来记录请求详细信息。

logging.level.org.springframework.web.server.adapter.HttpWebHandlerAdapter=DEBUG
spring.codec.log-request-details=true

【讨论】:

【参考方案4】:

对于 Spring Boot 2.1 及以下使用

logging.level.org.springframework.web=DEBUG
spring.http.log-request-details=true

对于 Spring Boot 2.2 及更高版本,spring.http.log-request-details 已被弃用,因此请使用

logging.level.org.springframework.web=DEBUG
spring.mvc.log-request-details=true

如果您想查看 loggingRequestDetails,请在您的 application.properties 中。

来自documentation:

是否在 DEBUG 记录(潜在敏感的)请求详细信息 并且允许 TRACE 级别。

【讨论】:

对那些没有快速理解的人(比如我)澄清一点:如果您没有使用 application.properties 并使用另一个框架进行应用程序配置,那么在您的应用程序配置中设置这些值.. 可能在哪里。 属性spring.http.log-request-details 已弃用:改用spring.mvc.log-request-details

以上是关于如何在 Spring Boot 中设置 enableLoggingRequestDetails='true'的主要内容,如果未能解决你的问题,请参考以下文章

Spring 如何在 Spring Boot 中设置数据源

如何在 Spring Boot 中设置 UTF-8 字符编码?

如何在spring boot中设置禁用浏览器缓存?

如何在 Spring Boot 中的 DatabaseConfig 中设置属性

如何在 Spring Boot 中设置副本集?

如何在 Spring Boot 中设置 ActiveMQ 端口?