diff --git a/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/feign/PolarisCircuitBreakerNameResolver.java b/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/feign/PolarisCircuitBreakerNameResolver.java index 2b1689c45..929a71d22 100644 --- a/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/feign/PolarisCircuitBreakerNameResolver.java +++ b/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/feign/PolarisCircuitBreakerNameResolver.java @@ -36,6 +36,7 @@ public class PolarisCircuitBreakerNameResolver implements CircuitBreakerNameReso @Override public String resolveCircuitBreakerName(String feignClientName, Target target, Method method) { + String serviceName = target.name(); RequestMapping requestMapping = findMergedAnnotation(method, RequestMapping.class); String path = ""; if (requestMapping != null) { @@ -44,8 +45,8 @@ public class PolarisCircuitBreakerNameResolver implements CircuitBreakerNameReso requestMapping.path()[0]; } return "".equals(path) ? - MetadataContext.LOCAL_NAMESPACE + "#" + feignClientName : - MetadataContext.LOCAL_NAMESPACE + "#" + feignClientName + "#" + path; + MetadataContext.LOCAL_NAMESPACE + "#" + serviceName : + MetadataContext.LOCAL_NAMESPACE + "#" + serviceName + "#" + path; } } diff --git a/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/feign/PolarisFeignCircuitBreakerInvocationHandler.java b/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/feign/PolarisFeignCircuitBreakerInvocationHandler.java index d1b7f1091..803a9dde8 100644 --- a/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/feign/PolarisFeignCircuitBreakerInvocationHandler.java +++ b/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/feign/PolarisFeignCircuitBreakerInvocationHandler.java @@ -96,7 +96,7 @@ public class PolarisFeignCircuitBreakerInvocationHandler implements InvocationHa return toString(); } - String circuitName = circuitBreakerNameResolver.resolveCircuitBreakerName(target.name(), target, method); + String circuitName = circuitBreakerNameResolver.resolveCircuitBreakerName(feignClientName, target, method); CircuitBreaker circuitBreaker = factory.create(circuitName); Supplier supplier = asSupplier(method, args); Function fallbackFunction; diff --git a/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/resttemplate/PolarisCircuitBreakerRestTemplate.java b/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/resttemplate/PolarisCircuitBreakerRestTemplate.java index bfcd7fac9..e7e4fcd8a 100644 --- a/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/resttemplate/PolarisCircuitBreakerRestTemplate.java +++ b/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/resttemplate/PolarisCircuitBreakerRestTemplate.java @@ -44,7 +44,8 @@ public @interface PolarisCircuitBreakerRestTemplate { String fallback() default ""; /** - * a fallback Class, will return a PolarisCircuitBreakerHttpResponse when any exception occurs. + * a fallback Class, will return a PolarisCircuitBreakerHttpResponse when any exception occurs. + * fallback Class must be a spring bean. * * @return PolarisCircuitBreakerFallback */