From 8e9eafb4c8c610d4fdcb77160fae56b27d27c33c Mon Sep 17 00:00:00 2001
From: byteblogs168 <598092184@qq.com>
Date: Sat, 9 Dec 2023 22:12:55 +0800
Subject: [PATCH] =?UTF-8?q?fix:2.5.0=201.=20=E4=BF=AE=E5=A4=8D=E9=92=89?=
=?UTF-8?q?=E9=92=89=E5=8F=91=E9=80=81=E5=A4=B1=E8=B4=A5=E9=97=AE=E9=A2=98?=
=?UTF-8?q?=202.=20=E5=AE=A2=E6=88=B7=E7=AB=AF=E5=BC=82=E5=B8=B8=E4=BF=A1?=
=?UTF-8?q?=E6=81=AF=E6=B7=BB=E5=8A=A0=E7=A9=BA=E9=97=B4ID=203.=20?=
=?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=91=8A=E8=AD=A6=E9=98=88=E5=80=BC=E6=B2=A1?=
=?UTF-8?q?=E6=9C=89=E5=8C=B9=E9=85=8D=E6=9C=80=E5=A4=A7=E9=87=8D=E8=AF=95?=
=?UTF-8?q?=E6=AC=A1=E6=95=B0=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../intercepter/EasyRetryInterceptor.java | 50 ++++++++-------
.../client/core/report/ReportListener.java | 37 ++++++-----
.../retry/client/core/report/SyncReport.java | 63 ++++++++++++++++++-
.../strategy/AbstractRetryStrategies.java | 10 ++-
.../retry/common/core/util/DingDingUtils.java | 5 +-
.../server/common/alarm/AbstractAlarm.java | 2 +-
...roller.java => SceneConfigController.java} | 2 +-
.../service/impl/SceneConfigServiceImpl.java | 2 +-
frontend/src/views/task/form/NotifyForm.vue | 11 +++-
9 files changed, 128 insertions(+), 54 deletions(-)
rename easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/controller/{SceneConfigSceneController.java => SceneConfigController.java} (97%)
diff --git a/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/intercepter/EasyRetryInterceptor.java b/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/intercepter/EasyRetryInterceptor.java
index 8eaa99e0..a5ee41b3 100644
--- a/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/intercepter/EasyRetryInterceptor.java
+++ b/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/intercepter/EasyRetryInterceptor.java
@@ -47,16 +47,17 @@ 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" +
+ "> 空间ID:{} \n" +
+ "> 名称:{} \n" +
+ "> 时间:{} \n" +
"> 异常:{} \n";
private final StandardEnvironment standardEnvironment;
private final RetryStrategy retryStrategy;
public EasyRetryInterceptor(StandardEnvironment standardEnvironment,
- RetryStrategy localRetryStrategies) {
+ RetryStrategy localRetryStrategies) {
this.standardEnvironment = standardEnvironment;
this.retryStrategy = localRetryStrategies;
}
@@ -84,10 +85,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);
@@ -96,8 +97,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();
@@ -119,32 +120,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 {
@@ -157,7 +158,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 {
@@ -165,7 +166,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 {
@@ -204,6 +205,7 @@ public class EasyRetryInterceptor implements MethodInterceptor, AfterAdvice, Ser
AlarmContext context = AlarmContext.build()
.text(retryErrorMoreThresholdTextMessageFormatter,
EnvironmentUtils.getActiveProfile(),
+ standardEnvironment.getProperty("easy-retry.namespace", StrUtil.EMPTY),
EasyRetryProperties.getGroup(),
LocalDateTime.now().format(formatter),
e.getMessage())
@@ -247,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);
}
diff --git a/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/report/ReportListener.java b/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/report/ReportListener.java
index 6558cb2e..dacf29db 100644
--- a/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/report/ReportListener.java
+++ b/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/report/ReportListener.java
@@ -40,9 +40,10 @@ import java.util.concurrent.TimeUnit;
public class ReportListener implements Listener {
private static final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
private static String reportErrorTextMessageFormatter =
- "{}环境 上报失败 \r\n" +
- "> 名称:{} \r\n" +
- "> 时间:{} \r\n" +
+ "{}环境 异步批量上报异常 \n" +
+ "> 空间ID:{} n" +
+ "> 名称:{} \n" +
+ "> 时间:{} \n" +
"> 异常:{} \n"
;
@@ -106,20 +107,24 @@ public class ReportListener implements Listener {
try {
ConfigDTO.Notify notifyAttribute = GroupVersionCache.getNotifyAttribute(NotifySceneEnum.CLIENT_REPORT_ERROR.getNotifyScene());
- if (Objects.nonNull(notifyAttribute)) {
- AlarmContext context = AlarmContext.build()
- .text(reportErrorTextMessageFormatter,
- EnvironmentUtils.getActiveProfile(),
- EasyRetryProperties.getGroup(),
- LocalDateTime.now().format(formatter),
- e.getMessage())
- .title("上报异常:[{}]", EasyRetryProperties.getGroup())
- .notifyAttribute(notifyAttribute.getNotifyAttribute());
-
- EasyRetryAlarmFactory easyRetryAlarmFactory = SpringContext.getBeanByType(EasyRetryAlarmFactory.class);
- Alarm alarmType = easyRetryAlarmFactory.getAlarmType(notifyAttribute.getNotifyType());
- alarmType.asyncSendMessage(context);
+ if (Objects.isNull(notifyAttribute)) {
+ return;
}
+
+ EasyRetryProperties properties = SpringContext.CONTEXT.getBean(EasyRetryProperties.class);
+ AlarmContext context = AlarmContext.build()
+ .text(reportErrorTextMessageFormatter,
+ EnvironmentUtils.getActiveProfile(),
+ properties.getNamespace(),
+ EasyRetryProperties.getGroup(),
+ LocalDateTime.now().format(formatter),
+ e.getMessage())
+ .title("上报异常:[{}]", EasyRetryProperties.getGroup())
+ .notifyAttribute(notifyAttribute.getNotifyAttribute());
+
+ EasyRetryAlarmFactory easyRetryAlarmFactory = SpringContext.getBeanByType(EasyRetryAlarmFactory.class);
+ Alarm alarmType = easyRetryAlarmFactory.getAlarmType(notifyAttribute.getNotifyType());
+ alarmType.asyncSendMessage(context);
} catch (Exception e1) {
LogUtils.error(log, "客户端发送组件异常告警失败", e1);
}
diff --git a/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/report/SyncReport.java b/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/report/SyncReport.java
index 66354139..61c01df4 100644
--- a/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/report/SyncReport.java
+++ b/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/report/SyncReport.java
@@ -1,16 +1,29 @@
package com.aizuda.easy.retry.client.core.report;
+import com.aizuda.easy.retry.client.common.cache.GroupVersionCache;
+import com.aizuda.easy.retry.client.common.config.EasyRetryProperties;
import com.aizuda.easy.retry.client.common.proxy.RequestBuilder;
import com.aizuda.easy.retry.client.core.client.NettyClient;
import com.aizuda.easy.retry.client.core.retryer.RetryerInfo;
+import com.aizuda.easy.retry.common.core.alarm.Alarm;
+import com.aizuda.easy.retry.common.core.alarm.AlarmContext;
+import com.aizuda.easy.retry.common.core.alarm.EasyRetryAlarmFactory;
+import com.aizuda.easy.retry.common.core.context.SpringContext;
+import com.aizuda.easy.retry.common.core.enums.NotifySceneEnum;
import com.aizuda.easy.retry.common.core.log.LogUtils;
import com.aizuda.easy.retry.common.core.model.NettyResult;
+import com.aizuda.easy.retry.common.core.util.EnvironmentUtils;
import com.aizuda.easy.retry.common.core.util.JsonUtil;
+import com.aizuda.easy.retry.server.model.dto.ConfigDTO;
import com.aizuda.easy.retry.server.model.dto.RetryTaskDTO;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
import java.util.Collections;
+import java.util.Objects;
import java.util.concurrent.TimeUnit;
/**
@@ -24,6 +37,19 @@ import java.util.concurrent.TimeUnit;
@Slf4j
public class SyncReport extends AbstractReport {
+ private static final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+
+ private static String reportErrorTextMessageFormatter =
+ "{}环境 同步上报异常 \n" +
+ "> 空间ID:{} \n" +
+ "> 名称:{} \n" +
+ "> 时间:{} \n" +
+ "> 异常:{} \n"
+ ;
+
+ @Autowired
+ private EasyRetryProperties easyRetryProperties;
+
@Override
public boolean supports(boolean async) {
return !async;
@@ -49,11 +75,42 @@ public class SyncReport extends AbstractReport {
.unit(unit)
.build();
- NettyResult result = client.reportRetryInfo(Collections.singletonList(retryTaskDTO));
- LogUtils.debug(log, "Data report result result:[{}]", JsonUtil.toJsonString(result));
+ try {
+ NettyResult result = client.reportRetryInfo(Collections.singletonList(retryTaskDTO));
+ LogUtils.debug(log, "Data report result result:[{}]", JsonUtil.toJsonString(result));
+ return (Boolean) result.getData();
+ } catch (Exception e) {
+ sendMessage(e);
+ throw e;
+ }
- return (Boolean) result.getData();
}
+ private void sendMessage(Throwable e) {
+
+ try {
+ ConfigDTO.Notify notifyAttribute = GroupVersionCache.getNotifyAttribute(NotifySceneEnum.CLIENT_REPORT_ERROR.getNotifyScene());
+ if (Objects.isNull(notifyAttribute)) {
+ return;
+ }
+
+ AlarmContext context = AlarmContext.build()
+ .text(reportErrorTextMessageFormatter,
+ EnvironmentUtils.getActiveProfile(),
+ easyRetryProperties.getNamespace(),
+ EasyRetryProperties.getGroup(),
+ LocalDateTime.now().format(formatter),
+ e.getMessage())
+ .title("同步上报异常:[{}]", EasyRetryProperties.getGroup())
+ .notifyAttribute(notifyAttribute.getNotifyAttribute());
+
+ EasyRetryAlarmFactory easyRetryAlarmFactory = SpringContext.getBeanByType(EasyRetryAlarmFactory.class);
+ Alarm alarmType = easyRetryAlarmFactory.getAlarmType(notifyAttribute.getNotifyType());
+ alarmType.asyncSendMessage(context);
+ } catch (Exception e1) {
+ LogUtils.error(log, "客户端发送组件异常告警失败", e1);
+ }
+
+ }
}
diff --git a/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/strategy/AbstractRetryStrategies.java b/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/strategy/AbstractRetryStrategies.java
index bde32ff9..c2be4dff 100644
--- a/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/strategy/AbstractRetryStrategies.java
+++ b/easy-retry-client/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/strategy/AbstractRetryStrategies.java
@@ -40,9 +40,10 @@ import java.util.function.Consumer;
public abstract class AbstractRetryStrategies implements RetryStrategy {
private static final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
private static String retryErrorMoreThresholdTextMessageFormatter =
- "{}环境 重试组件异常 \r\n" +
- "> 名称:{} \r\n" +
- "> 时间:{} \r\n" +
+ "{}环境 重试期间发生非预期异常 \n" +
+ "> 空间ID:{} \n" +
+ "> 名称:{} \n" +
+ "> 时间:{} \n" +
"> 异常:{} \n"
;
@@ -52,6 +53,8 @@ public abstract class AbstractRetryStrategies implements RetryStrategy {
private EasyRetryAlarmFactory easyRetryAlarmFactory;
@Autowired
private List reports;
+ @Autowired
+ private EasyRetryProperties easyRetryProperties;
@Override
public RetryerResultContext openRetry(String sceneName, String executorClassName, Object[] params) {
@@ -176,6 +179,7 @@ public abstract class AbstractRetryStrategies implements RetryStrategy {
AlarmContext context = AlarmContext.build()
.text(retryErrorMoreThresholdTextMessageFormatter,
EnvironmentUtils.getActiveProfile(),
+ easyRetryProperties.getNamespace(),
EasyRetryProperties.getGroup(),
LocalDateTime.now().format(formatter),
e.getMessage())
diff --git a/easy-retry-common/easy-retry-common-core/src/main/java/com/aizuda/easy/retry/common/core/util/DingDingUtils.java b/easy-retry-common/easy-retry-common-core/src/main/java/com/aizuda/easy/retry/common/core/util/DingDingUtils.java
index 99bd64f6..80065baa 100644
--- a/easy-retry-common/easy-retry-common-core/src/main/java/com/aizuda/easy/retry/common/core/util/DingDingUtils.java
+++ b/easy-retry-common/easy-retry-common-core/src/main/java/com/aizuda/easy/retry/common/core/util/DingDingUtils.java
@@ -53,8 +53,8 @@ public class DingDingUtils {
request.setMsgtype("markdown");
OapiRobotSendRequest.Markdown markdown = new OapiRobotSendRequest.Markdown();
markdown.setTitle(title);
- request.setMarkdown(markdown);
markdown.setText(subTextLength(getAtText(ats, text)));
+ request.setMarkdown(markdown);
OapiRobotSendRequest.At at = new OapiRobotSendRequest.At();
at.setAtMobiles(ats);
@@ -81,9 +81,10 @@ public class DingDingUtils {
public static boolean sendMessage(OapiRobotSendRequest request, String url) {
try {
- if (StrUtil.isNotBlank(url)) {
+ if (StrUtil.isBlank(url)) {
return false;
}
+
DingTalkClient client = new DefaultDingTalkClient(url);
client.execute(request);
diff --git a/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/alarm/AbstractAlarm.java b/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/alarm/AbstractAlarm.java
index b71c6022..e0541b48 100644
--- a/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/alarm/AbstractAlarm.java
+++ b/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/alarm/AbstractAlarm.java
@@ -119,7 +119,7 @@ public abstract class AbstractAlarm alarmDTO.getCount()) {
+ if (notifyConfig.getNotifyThreshold() >= alarmDTO.getCount()) {
continue;
}
}
diff --git a/easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/controller/SceneConfigSceneController.java b/easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/controller/SceneConfigController.java
similarity index 97%
rename from easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/controller/SceneConfigSceneController.java
rename to easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/controller/SceneConfigController.java
index 0f144522..5e231357 100644
--- a/easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/controller/SceneConfigSceneController.java
+++ b/easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/controller/SceneConfigController.java
@@ -20,7 +20,7 @@ import java.util.List;
*/
@RestController
@RequestMapping("/scene-config")
-public class SceneConfigSceneController {
+public class SceneConfigController {
@Autowired
private SceneConfigService sceneConfigService;
diff --git a/easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/service/impl/SceneConfigServiceImpl.java b/easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/service/impl/SceneConfigServiceImpl.java
index 2ab4b871..0974c77f 100644
--- a/easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/service/impl/SceneConfigServiceImpl.java
+++ b/easy-retry-server/easy-retry-server-web/src/main/java/com/aizuda/easy/retry/server/web/service/impl/SceneConfigServiceImpl.java
@@ -67,7 +67,7 @@ public class SceneConfigServiceImpl implements SceneConfigService {
List sceneConfigs = accessTemplate.getSceneConfigAccess()
.list(new LambdaQueryWrapper()
- .select(SceneConfig::getSceneName, SceneConfig::getDescription)
+ .select(SceneConfig::getSceneName, SceneConfig::getDescription, SceneConfig::getMaxRetryCount)
.eq(SceneConfig::getNamespaceId, namespaceId)
.eq(SceneConfig::getGroupName, groupName)
.orderByDesc(SceneConfig::getCreateDt));
diff --git a/frontend/src/views/task/form/NotifyForm.vue b/frontend/src/views/task/form/NotifyForm.vue
index 0d66640e..a2ded732 100644
--- a/frontend/src/views/task/form/NotifyForm.vue
+++ b/frontend/src/views/task/form/NotifyForm.vue
@@ -42,6 +42,7 @@
v-else
id="inputNumber"
:min="1"
+ :max="maxNotifyThreshold"
style="width: -webkit-fill-available"
v-decorator="[
'notifyThreshold',
@@ -63,8 +64,8 @@
-
- {{ item.sceneName }}
+
+ {{ item.sceneName }}
@@ -321,7 +322,8 @@ export default {
notifySceneValue: '1',
rateLimiterStatusValue: '0',
defaultRateLimiterStatusValue: '0',
- defaultRateLimiterThreshold: '100'
+ defaultRateLimiterThreshold: '100',
+ maxNotifyThreshold: 999
}
},
beforeCreate () {
@@ -365,6 +367,9 @@ export default {
this.sceneList = res.data
})
},
+ changeSceneName (value, option) {
+ this.maxNotifyThreshold = option.data.attrs.maxRetryCount
+ },
changeRateLimiterStatus (rateLimiterStatus) {
this.rateLimiterStatusValue = rateLimiterStatus
},