Springboot执行器DB健康检查



我需要更改频率来检查springboot执行器中的DB运行状况。默认的数据库运行状况检查查询在每毫秒内执行一次。我想让这个查询每隔1分钟执行一次,而不是以毫秒为单位。有什么方法可以自定义它吗?

实际上,执行器只在您使用api时执行。如果你想更新你的执行器,你可以做两件事,第一件是每分钟调用一次api,另一件是创建一个自定义的健康检查并启用调度。

@SpringBootApplication
@EnableScheduling
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication .class, args);
}
}
@Service
public class CustomService {
@Scheduled(fixedDelay = 60000)
public Object getResultFromQuery() {
// call your query
}
}
@Component
public class HealthCustomCheck implements HealthIndicator {
private final CustomService customService;
public HealthCustomCheck(CustomService customService) {
this.customService = customService;
}

@Override
public Health health() {
return Health.up().withDetail("yourQuery", customService.getResultFromQuery().toString()).build();
}
}

最新更新