Spring 弹簧靴v2执行器选择器
我正在尝试关注博客帖子: 我已经实现了这样的执行器端点:Spring 弹簧靴v2执行器选择器,spring,spring-boot,actuator,Spring,Spring Boot,Actuator,我正在尝试关注博客帖子: 我已经实现了这样的执行器端点: @Component @Endpoint(id = "test/filter/configurator") @RequiredArgsConstructor public class AdvisorFilterConfigurator { private final AdvisorFilterConfig filterConfig; @ReadOperation public Boolean rewrite(@Selector
@Component
@Endpoint(id = "test/filter/configurator")
@RequiredArgsConstructor
public class AdvisorFilterConfigurator {
private final AdvisorFilterConfig filterConfig;
@ReadOperation
public Boolean rewrite(@Selector Boolean enable) {
filterConfig.setEnable(enable);
return filterConfig.isEnable();
}
}
如果我试图访问它,sais缺少参数:enable。请参阅随附的屏幕截图
我只能通过以下方式访问该端点:
{anystring}?enable=true
我是否做错了什么,或者这是执行器的问题
非常感谢,希望能尽快收到您的回复,因为您没有使用-parameters
编译代码,所以出现了“缺少参数”位
如果没有,你应该在日志中看到类似的内容
2018-08-21 10:35:21.098 INFO 78181---[main]s.b.a.e.w.s.WebMvcEndpointHandlerMapping:Mapped“{[/exactor/test/{arg0}],methods=[GET],products=[application/vnd.spring boot.exactor.v2+json | | application/json]}”公共java.lang.Object org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(javax.servlet.http.HttpServletRequest,java.util.Map)
一旦您确定代码是使用-参数编译的,您应该看到如下内容:
2018-08-21 10:34:20.802信息77977---[main]s.b.a.e.w.s.WebMvcEndpointHandlerMapping:Mapped“{[/exactor/test/{enable}],methods=[GET],products=[application/vnd.spring boot.exactor.v2+json | | application/json]}”公共java.lang.Object org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(javax.servlet.http.HttpServletRequest,java.util.Map)
请注意,在第一种情况下,选择器是{arg0}
(信息不可用时自动生成的参数名称),而在第二种情况下,选择器是{enable}
如果您正在使用Maven和spring启动父级(mvn clean spring boot:run
),也可以从命令行运行应用程序,因为它负责自动启用-参数
我还创建了一个程序来检查如何改进错误消息