feat:support circuit breaker metrics reporting. (#1495)

pull/1544/head
Haotian Zhang 7 months ago committed by fishtailfu
parent 500761e26a
commit 9fa7ad266b

@ -27,4 +27,5 @@
- [feat:support auth.](https://github.com/Tencent/spring-cloud-tencent/pull/1541)
- [feat:support smooth upgrade from tsf. ](https://github.com/Tencent/spring-cloud-tencent/pull/1542)
- [feat:support polaris event.](https://github.com/Tencent/spring-cloud-tencent/pull/1543)
- [feat:support circuit breaker metrics reporting.](https://github.com/Tencent/spring-cloud-tencent/pull/1544)

@ -74,7 +74,7 @@ public class PolarisCircuitBreaker implements CircuitBreaker, InvokeHandler {
}
catch (CallAbortedException e) {
LOGGER.debug("PolarisCircuitBreaker CallAbortedException: {}", e.getMessage());
PolarisCircuitBreakerUtils.reportStatus(consumerAPI, conf, e);
reportStatus(e);
return fallback.apply(e);
}
catch (Exception e) {
@ -97,11 +97,7 @@ public class PolarisCircuitBreaker implements CircuitBreaker, InvokeHandler {
invokeHandler.onError(responseContext);
}
public PolarisCircuitBreakerConfigBuilder.PolarisCircuitBreakerConfiguration getConf() {
return conf;
}
public ConsumerAPI getConsumerAPI() {
return consumerAPI;
public void reportStatus(CallAbortedException e) {
PolarisCircuitBreakerUtils.reportStatus(consumerAPI, conf, e);
}
}

@ -90,6 +90,7 @@ public class CircuitBreakerPlugin implements EnhancedPlugin {
}
catch (CallAbortedException e) {
LOG.debug("[CircuitBreakerPlugin] request is aborted. request service url=[{}]", request.getServiceUrl());
polarisCircuitBreaker.reportStatus(e);
if (e.getFallbackInfo() != null) {
Object fallbackResponse = new PolarisCircuitBreakerHttpResponse(e.getFallbackInfo());
putMetadataObjectValue(ContextConstant.CircuitBreaker.CIRCUIT_BREAKER_FALLBACK_HTTP_RESPONSE, fallbackResponse);

@ -52,10 +52,10 @@ public class PolarisStatProperties {
/**
* Push metrics interval.
* unit: milliseconds default 30s.
* unit: milliseconds default 60s.
*/
@Value("${spring.cloud.polaris.stat.pushgateway.push-interval:#{30000}}")
private Long pushGatewayPushInterval = 30 * 1000L;
@Value("${spring.cloud.polaris.stat.pushgateway.push-interval:#{60000}}")
private Long pushGatewayPushInterval = 60 * 1000L;
/**
* If push gateway gzip open. default false.

@ -69,9 +69,9 @@
{
"name": "spring.cloud.polaris.stat.pushgateway.push-interval",
"type": "java.lang.Long",
"description": "Push metrics interval. unit: milliseconds default 30s.",
"description": "Push metrics interval. unit: milliseconds default 60000ms.",
"sourceType": "com.tencent.cloud.rpc.enhancement.stat.config.PolarisStatProperties",
"defaultValue": 30000
"defaultValue": 60000
},
{
"name": "spring.cloud.polaris.stat.pushgateway.open-gzip",

Loading…
Cancel
Save