From 68df668c00b51e30aa8e105d885428b4f3891793 Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Fri, 1 Aug 2025 14:08:05 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=9A=E7=9F=A5=E6=8F=90=E7=A4=BA=E9=A2=9D?= =?UTF-8?q?=E5=A4=96=E5=A2=9E=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ycwl/basic/mapper/TaskMapper.java | 2 ++ .../java/com/ycwl/basic/watchdog/TaskWatchDog.java | 14 +++++++++++++- src/main/resources/mapper/TaskMapper.xml | 5 +++++ 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/ycwl/basic/mapper/TaskMapper.java b/src/main/java/com/ycwl/basic/mapper/TaskMapper.java index 92a2c6e..f44b313 100644 --- a/src/main/java/com/ycwl/basic/mapper/TaskMapper.java +++ b/src/main/java/com/ycwl/basic/mapper/TaskMapper.java @@ -55,4 +55,6 @@ public interface TaskMapper { List listEntity(TaskReqQuery taskReqQuery); List selectNotRunningByScenicList(String scenicOnly); + + List selectAllFailed(); } diff --git a/src/main/java/com/ycwl/basic/watchdog/TaskWatchDog.java b/src/main/java/com/ycwl/basic/watchdog/TaskWatchDog.java index c2ef2f4..ae0c087 100644 --- a/src/main/java/com/ycwl/basic/watchdog/TaskWatchDog.java +++ b/src/main/java/com/ycwl/basic/watchdog/TaskWatchDog.java @@ -25,8 +25,17 @@ public class TaskWatchDog { String title = "任务堆积警告!"; StringBuilder content = new StringBuilder(); if (allNotRunningTaskList.size() > 10) { - content.append("当前任务队列中存在超过10个未运行任务,请及时处理!"); + content.append("当前任务队列中存在超过10个未运行任务,请及时处理!未运行任务数量:").append(allNotRunningTaskList.size()); } + + List allFailedTaskList = taskMapper.selectAllFailed(); + if (allFailedTaskList.size() > 5) { + if (content.length() > 0) { + content.append("\n"); + } + content.append("当前存在超过5个失败任务(status=3),请及时检查和处理!失败任务数量:").append(allFailedTaskList.size()); + } + List allRunningTaskList = taskMapper.selectAllRunning(); for (TaskEntity taskEntity : allRunningTaskList) { if (taskEntity.getStartTime() == null) { @@ -34,6 +43,9 @@ public class TaskWatchDog { } // startTime已经过去3分钟了 if (System.currentTimeMillis() - taskEntity.getStartTime().getTime() > 1000 * 60 * 3) { + if (content.length() > 0) { + content.append("\n"); + } content.append("当前【").append(taskEntity.getWorkerId()).append("】渲染机的【").append(taskEntity.getId()).append("】任务已超过3分钟未完成!"); } } diff --git a/src/main/resources/mapper/TaskMapper.xml b/src/main/resources/mapper/TaskMapper.xml index 3402425..dbfa2ee 100644 --- a/src/main/resources/mapper/TaskMapper.xml +++ b/src/main/resources/mapper/TaskMapper.xml @@ -147,4 +147,9 @@ where status = 0 and worker_id is null and FIND_IN_SET(scenic_id, #{scenicId}) limit 1 +