From 732c0c1cf093e3abe76cbdf42e15d5992fd0bdcf Mon Sep 17 00:00:00 2001
From: byteblogs168 <598092184@qq.com>
Date: Tue, 5 Sep 2023 22:09:43 +0800
Subject: [PATCH] =?UTF-8?q?feat:3.0.0=201.=20=E4=BF=AE=E5=A4=8D=E5=9B=9E?=
=?UTF-8?q?=E8=B0=83=E6=89=A7=E8=A1=8C=E5=99=A8=E8=8E=B7=E5=8F=96=E7=9A=84?=
=?UTF-8?q?=E9=94=99=E8=AF=AF=E9=97=AE=E9=A2=98=202.=20=E4=BF=AE=E5=A4=8DR?=
=?UTF-8?q?etryable=E4=BD=9C=E7=94=A8=E5=9C=A8=E6=8E=A5=E5=8F=A3=E4=B8=8A?=
=?UTF-8?q?=E6=97=A0=E6=95=88=E9=97=AE=E9=A2=98=203.=20=E4=BF=AE=E5=A4=8D?=
=?UTF-8?q?=E5=A4=9A=E5=9C=BA=E6=99=AF=E6=95=B0=E6=8D=AE=E4=B8=8A=E6=8A=A5?=
=?UTF-8?q?=E6=97=B6=E9=87=8D=E5=A4=8D=E7=94=9F=E6=88=90retryTask?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../intercepter/EasyRetryInterceptor.java | 66 +++++++++----------
1 file changed, 33 insertions(+), 33 deletions(-)
diff --git a/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/intercepter/EasyRetryInterceptor.java b/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/intercepter/EasyRetryInterceptor.java
index dc46c2a0..8da4deca 100644
--- a/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/intercepter/EasyRetryInterceptor.java
+++ b/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/intercepter/EasyRetryInterceptor.java
@@ -49,16 +49,16 @@ public class EasyRetryInterceptor implements MethodInterceptor, AfterAdvice, Ser
private static final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
private static String retryErrorMoreThresholdTextMessageFormatter =
- "{}环境 重试组件异常 \r\n" +
- "> 名称:{} \r\n" +
- "> 时间:{} \r\n" +
- "> 异常:{} \n";
+ "{}环境 重试组件异常 \r\n" +
+ "> 名称:{} \r\n" +
+ "> 时间:{} \r\n" +
+ "> 异常:{} \n";
private final StandardEnvironment standardEnvironment;
private final RetryStrategy retryStrategy;
public EasyRetryInterceptor(StandardEnvironment standardEnvironment,
- RetryStrategy localRetryStrategies) {
+ RetryStrategy localRetryStrategies) {
this.standardEnvironment = standardEnvironment;
this.retryStrategy = localRetryStrategies;
}
@@ -86,10 +86,10 @@ public class EasyRetryInterceptor implements MethodInterceptor, AfterAdvice, Ser
} finally {
LogUtils.debug(log, "Start retrying. traceId:[{}] scene:[{}] executorClassName:[{}]", traceId,
- retryable.scene(), executorClassName);
+ retryable.scene(), executorClassName);
// 入口则开始处理重试
retryerResultContext = doHandlerRetry(invocation, traceId, retryable, executorClassName, methodEntrance,
- throwable);
+ throwable);
}
LogUtils.debug(log, "Method return value is [{}]. traceId:[{}]", result, traceId, throwable);
@@ -98,8 +98,8 @@ public class EasyRetryInterceptor implements MethodInterceptor, AfterAdvice, Ser
if (Objects.nonNull(retryerResultContext)) {
// 重试成功直接返回结果 若注解配置了isThrowException=false 则不抛出异常
if (retryerResultContext.getRetryResultStatusEnum().getStatus()
- .equals(RetryResultStatusEnum.SUCCESS.getStatus())
- || !retryable.isThrowException()) {
+ .equals(RetryResultStatusEnum.SUCCESS.getStatus())
+ || !retryable.isThrowException()) {
// 若返回值是NULL且是基本类型则返回默认值
Method method = invocation.getMethod();
@@ -121,32 +121,32 @@ public class EasyRetryInterceptor implements MethodInterceptor, AfterAdvice, Ser
private RetryerResultContext doHandlerRetry(MethodInvocation invocation, String traceId, Retryable retryable,
- String executorClassName, String methodEntrance, Throwable throwable) {
+ String executorClassName, String methodEntrance, Throwable throwable) {
if (!RetrySiteSnapshot.isMethodEntrance(methodEntrance)
- || RetrySiteSnapshot.isRunning()
- || Objects.isNull(throwable)
- // 重试流量不开启重试
- || RetrySiteSnapshot.isRetryFlow()
- // 下游响应不重试码,不开启重试
- || RetrySiteSnapshot.isRetryForStatusCode()
- // 匹配异常信息
- || !validate(throwable, RetryerInfoCache.get(retryable.scene(), executorClassName))
+ || RetrySiteSnapshot.isRunning()
+ || Objects.isNull(throwable)
+ // 重试流量不开启重试
+ || RetrySiteSnapshot.isRetryFlow()
+ // 下游响应不重试码,不开启重试
+ || RetrySiteSnapshot.isRetryForStatusCode()
+ // 匹配异常信息
+ || !validate(throwable, RetryerInfoCache.get(retryable.scene(), executorClassName))
) {
if (!RetrySiteSnapshot.isMethodEntrance(methodEntrance)) {
LogUtils.debug(log, "Non-method entry does not enable local retries. traceId:[{}] [{}]", traceId,
- RetrySiteSnapshot.getMethodEntrance());
+ RetrySiteSnapshot.getMethodEntrance());
} else if (RetrySiteSnapshot.isRunning()) {
LogUtils.debug(log, "Existing running retry tasks do not enable local retries. traceId:[{}] [{}]",
- traceId, EnumStage.valueOfStage(RetrySiteSnapshot.getStage()));
+ traceId, EnumStage.valueOfStage(RetrySiteSnapshot.getStage()));
} else if (Objects.isNull(throwable)) {
LogUtils.debug(log, "No exception, no local retries. traceId:[{}]", traceId);
} else if (RetrySiteSnapshot.isRetryFlow()) {
LogUtils.debug(log, "Retry traffic does not enable local retries. traceId:[{}] [{}]", traceId,
- RetrySiteSnapshot.getRetryHeader());
+ RetrySiteSnapshot.getRetryHeader());
} else if (RetrySiteSnapshot.isRetryForStatusCode()) {
LogUtils.debug(log, "Existing exception retry codes do not enable local retries. traceId:[{}]",
- traceId);
+ traceId);
} else if (!validate(throwable, RetryerInfoCache.get(retryable.scene(), executorClassName))) {
LogUtils.debug(log, "Exception mismatch. traceId:[{}]", traceId);
} else {
@@ -159,7 +159,7 @@ public class EasyRetryInterceptor implements MethodInterceptor, AfterAdvice, Ser
}
private RetryerResultContext openRetry(MethodInvocation point, String traceId, Retryable retryable,
- String executorClassName, Throwable throwable) {
+ String executorClassName, Throwable throwable) {
try {
@@ -167,7 +167,7 @@ public class EasyRetryInterceptor implements MethodInterceptor, AfterAdvice, Ser
initHeaders(retryable);
RetryerResultContext context = retryStrategy.openRetry(retryable.scene(), executorClassName,
- point.getArguments());
+ point.getArguments());
if (RetryResultStatusEnum.SUCCESS.getStatus().equals(context.getRetryResultStatusEnum().getStatus())) {
LogUtils.debug(log, "local retry successful. traceId:[{}] result:[{}]", traceId, context.getResult());
} else {
@@ -201,16 +201,16 @@ public class EasyRetryInterceptor implements MethodInterceptor, AfterAdvice, Ser
try {
ConfigDTO.Notify notifyAttribute = GroupVersionCache.getNotifyAttribute(
- NotifySceneEnum.CLIENT_COMPONENT_ERROR.getNotifyScene());
+ NotifySceneEnum.CLIENT_COMPONENT_ERROR.getNotifyScene());
if (Objects.nonNull(notifyAttribute)) {
AlarmContext context = AlarmContext.build()
- .text(retryErrorMoreThresholdTextMessageFormatter,
- EnvironmentUtils.getActiveProfile(),
- EasyRetryProperties.getGroup(),
- LocalDateTime.now().format(formatter),
- e.getMessage())
- .title("retry component handling exception:[{}]", EasyRetryProperties.getGroup())
- .notifyAttribute(notifyAttribute.getNotifyAttribute());
+ .text(retryErrorMoreThresholdTextMessageFormatter,
+ EnvironmentUtils.getActiveProfile(),
+ EasyRetryProperties.getGroup(),
+ LocalDateTime.now().format(formatter),
+ e.getMessage())
+ .title("retry component handling exception:[{}]", EasyRetryProperties.getGroup())
+ .notifyAttribute(notifyAttribute.getNotifyAttribute());
Alarm alarmType = SpringContext.getBeanByType(EasyRetryAlarmFactory.class).getAlarmType(notifyAttribute.getNotifyType());
alarmType.asyncSendMessage(context);
@@ -249,7 +249,7 @@ public class EasyRetryInterceptor implements MethodInterceptor, AfterAdvice, Ser
@Override
public int getOrder() {
String order = standardEnvironment
- .getProperty("easy-retry.aop.order", String.valueOf(Ordered.HIGHEST_PRECEDENCE));
+ .getProperty("easy-retry.aop.order", String.valueOf(Ordered.HIGHEST_PRECEDENCE));
return Integer.parseInt(order);
}