Spring Webflux 2.4.2 - 执行器 /auditevents /httptrace /integrationgraph /sessions 端点上的 404
Posted
技术标签:
【中文标题】Spring Webflux 2.4.2 - 执行器 /auditevents /httptrace /integrationgraph /sessions 端点上的 404【英文标题】:Spring Webflux 2.4.2 - 404 on actuator /auditevents /httptrace /integrationgraph /sessions endpoints 【发布时间】:2021-05-09 20:13:41 【问题描述】:关于一些返回 404 的执行器端点的小问题。 我有一个基于 Webflux 2.4.2 的网络应用程序,仅用于测试这个问题,我正在使用
management.endpoints.web.exposure.include=*
Actuator 正在工作,因为 curl 将获得 /health /metrics 和其他端点的响应。
但是,对于那些端点 /auditevents /httptrace /integrationgraph /sessions
,除了 http 404 之外,我什么也得不到。
[05/Feb/2021:13:00:18 +0000] "OPTIONS /auditevents HTTP/1.1" 404 141 55 毫秒
请问我错过了什么? 请问启用 /auditevents 端点的步骤是什么? 请问启用 /httptrace 端点的步骤是什么?我有侦探和 Zipkin 工作 请问启用 /integrationgraph 端点的步骤是什么? 请问启用 /sessions 端点的步骤是什么?这些确实是唯一返回 404 的端点,但仍然不知道为什么。 不想向每个端点发送一个问题相同的问题。所有其他执行器端点都很好。
谢谢
【问题讨论】:
春季开机版? 从日志行看来您正在使用 OPTIONS http 方法。我相信您应该对/auditevents
使用GET http 方法。如果你使用 curl 来测试这些端点,你可以传入-X GET
哦,是的,谢谢。但是得到完全相同的机智 -X GET,仍然是 404
【参考方案1】:
根据Spring Boot Reference Docs:
要在执行器中启用/httptrace
,您必须在自定义@Configuration
类中创建一个InMemoryHttpTraceRepository
类的bean,以提供请求和响应的跟踪。
@Bean
public HttpTraceRepository htttpTraceRepository()
return new InMemoryHttpTraceRepository();
要在执行器中启用/auditevents
,您必须在自定义@Configuration
类中创建一个InMemoryAuditEventRepository
类的bean,以公开审计事件信息。
@Bean
public AuditEventRepository auditEventRepository()
return new InMemoryAuditEventRepository();
要在执行器中启用/integrationgraph
,您必须在 pom.xml 中添加spring-integration-core dependency
(根据文档):
<dependency>
<groupId>org.springframework.integration</groupId>
<artifactId>spring-integration-core</artifactId>
</dependency>
或者如果你有一个 spring-boot 项目,那么添加这个:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-integration</artifactId>
</dependency>
/actuator/sessions
默认启用。但您仍然可以显式添加它来检查行为。
在 application.properties 中添加这个。
management.endpoint.sessions.enabled = true
【讨论】:
非常。公认。非常感谢您的明确解释 请不要发布文本截图,在答案中包含文本,并带有文本链接并使用 quote 功能。 meta.***.com/a/285557/1840146 链接引用:You should not post code (or error/exception messages, log files, configuration files, project files, or anything else that is represented in textual form)
@Toerktumlare 更新了我的答案。已删除屏幕截图。以上是关于Spring Webflux 2.4.2 - 执行器 /auditevents /httptrace /integrationgraph /sessions 端点上的 404的主要内容,如果未能解决你的问题,请参考以下文章
覆盖 Spring webflux 项目的默认 Threadpool 执行器的效果如何?
如何使用 Spring WebFlux 为执行器端点添加 URL 别名?
Spring Boot v2.0.0.M2 webflux 和执行器
在 Spring Webflux 中执行阻塞 JDBC 调用