对于Spring Framework 5.0.1.RELEASE
和Spring Boot 2.0.0.M6
我们想要使用micrometer application monitoring,因此包括:
compile('org.springframework.boot:spring-boot-starter-actuator')
compile('io.micrometer:micrometer-registry-prometheus')
进入我们的依赖集并使用以下休息端点创建一个控制器:
@RestController
@Timed
public class MyController {
@Autowired
private MyService service;
@RequestMapping(value = "/test", method = RequestMethod.GET)
public void test() {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
@RequestMapping(value = "/test/flux", method = RequestMethod.GET, produces = "application/stream+json")
public Flux<MyItem> getMyItems(@RequestParam Map<String, String> params) {
return this.service.getMyItems(params);
}
}
所以我们得到了/test
端点,它等待了两秒钟,我们得到了/test/flux
端点,它返回了一个主题列表。
Bot请求工作。唯一的区别是,对于/test
端点,我得到了prometheus指标,对于/test/flux
端点,我没有得到任何指标:
http_server_requests_duration_seconds_count{exception="None",method="GET",status="200",uri="/get/test",} 1.0
http_server_requests_duration_seconds_sum{exception="None",method="GET",status="200",uri="/get/test",} 2.002811046
http_server_requests_duration_seconds_max{exception="None",method="GET",status="200",uri="/get/test",} 0.0
我是否必须配置其他内容以使其适用于返回Flux
或Flux
但尚未支持的请求?
答案 0 :(得分:2)
WebFlux端点的自动配置包含在Boot 2 RC2中!