From e342e646ff893beaa40b24055b24a39f2b793eaa Mon Sep 17 00:00:00 2001 From: zengqiao Date: Sat, 8 May 2021 13:50:04 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=9B=A0DB=E6=97=B6=E5=8C=BA?= =?UTF-8?q?=E4=B8=8D=E5=AF=B9=E5=AF=BC=E8=87=B4=E5=91=A8=E6=9C=9F=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E4=B8=8D=E8=83=BD=E8=A2=AB=E8=A7=A6=E5=8F=91=E7=9A=84?= =?UTF-8?q?=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task/component/AbstractScheduledTask.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/kafka-manager-task/src/main/java/com/xiaojukeji/kafka/manager/task/component/AbstractScheduledTask.java b/kafka-manager-task/src/main/java/com/xiaojukeji/kafka/manager/task/component/AbstractScheduledTask.java index b0700975..7eddb926 100644 --- a/kafka-manager-task/src/main/java/com/xiaojukeji/kafka/manager/task/component/AbstractScheduledTask.java +++ b/kafka-manager-task/src/main/java/com/xiaojukeji/kafka/manager/task/component/AbstractScheduledTask.java @@ -148,10 +148,12 @@ public abstract class AbstractScheduledTask implements Sch } Collections.sort(allTaskList); - List hostList = heartbeatDao.selectActiveHosts( - new Date(now - ScheduledTaskConstant.HEARTBEAT_TIME) - ); + List hostList = heartbeatDao.selectActiveHosts(new Date(now - ScheduledTaskConstant.HEARTBEAT_TIME)); if (ValidateUtils.isEmptyList(hostList)) { + // 当前无机器注册,导致周期任务(Topic指标存DB等任务)不可被触发执行。 + // 大概率原因可能是:DB的时区不对,注册的时间错误导致查询不出来。 + // 如果是单台方式部署的Logi-KM,那么也可能是服务新上线,或者是服务不正常导致的。 + LOGGER.error("customScheduled task running, but without registrant, and so scheduled tasks can't execute, scheduledName:{}.", scheduledName); return Lists.newArrayList(); } @@ -163,8 +165,10 @@ public abstract class AbstractScheduledTask implements Sch idx++; } if (idx == hostList.size()) { - // 当前机器未注册 - LOGGER.error("customScheduled task running, registers not conclude, scheduledName:{}.", scheduledName); + // 当前机器未注册, 原因可能是: + // 1、当前服务新上线,确实暂未注册到DB中。 + // 2、当前服务异常,比如进行FGC等,导致注册任务停止了。 + LOGGER.warn("customScheduled task running, registrants not conclude present machine, scheduledName:{}.", scheduledName); return Lists.newArrayList(); }