下面列出了怎么用org.springframework.boot.actuate.health.StatusAggregator的API类实例代码及写法,或者点击链接到github查看源代码。
@Bean
@ConditionalOnMissingBean(name = "circuitBreakersHealthIndicator")
@ConditionalOnProperty(prefix = "management.health.circuitbreakers", name = "enabled")
public CircuitBreakersHealthIndicator circuitBreakersHealthIndicator(
CircuitBreakerRegistry circuitBreakerRegistry,
CircuitBreakerConfigurationProperties circuitBreakerProperties,
StatusAggregator statusAggregator) {
return new CircuitBreakersHealthIndicator(circuitBreakerRegistry, circuitBreakerProperties, statusAggregator);
}
@Bean
@ConditionalOnMissingBean(name = "rateLimitersHealthIndicator")
@ConditionalOnProperty(prefix = "management.health.ratelimiters", name = "enabled")
public RateLimitersHealthIndicator rateLimitersHealthIndicator(
RateLimiterRegistry rateLimiterRegistry,
RateLimiterConfigurationProperties rateLimiterProperties,
StatusAggregator statusAggregator) {
return new RateLimitersHealthIndicator(rateLimiterRegistry, rateLimiterProperties, statusAggregator);
}
protected Status getStatus(StatusAggregator statusAggregator) {
Status status;
Set<Status> statusSet = healthIndicators.values().stream()
.map(HealthIndicator::health).map(Health::getStatus)
.collect(Collectors.toSet());
status = statusAggregator.getAggregateStatus(statusSet);
return status;
}
public EurekaHealthCheckHandler(StatusAggregator statusAggregator) {
this.statusAggregator = statusAggregator;
Assert.notNull(statusAggregator, "StatusAggregator must not be null");
}