通知提示额外增加

This commit is contained in:
2025-08-01 14:08:05 +08:00
parent ac99ede4b1
commit 68df668c00
3 changed files with 20 additions and 1 deletions

View File

@@ -55,4 +55,6 @@ public interface TaskMapper {
List<TaskEntity> listEntity(TaskReqQuery taskReqQuery); List<TaskEntity> listEntity(TaskReqQuery taskReqQuery);
List<TaskRespVO> selectNotRunningByScenicList(String scenicOnly); List<TaskRespVO> selectNotRunningByScenicList(String scenicOnly);
List<TaskEntity> selectAllFailed();
} }

View File

@@ -25,8 +25,17 @@ public class TaskWatchDog {
String title = "任务堆积警告!"; String title = "任务堆积警告!";
StringBuilder content = new StringBuilder(); StringBuilder content = new StringBuilder();
if (allNotRunningTaskList.size() > 10) { if (allNotRunningTaskList.size() > 10) {
content.append("当前任务队列中存在超过10个未运行任务,请及时处理!"); content.append("当前任务队列中存在超过10个未运行任务,请及时处理!未运行任务数量:").append(allNotRunningTaskList.size());
} }
List<TaskEntity> allFailedTaskList = taskMapper.selectAllFailed();
if (allFailedTaskList.size() > 5) {
if (content.length() > 0) {
content.append("\n");
}
content.append("当前存在超过5个失败任务(status=3),请及时检查和处理!失败任务数量:").append(allFailedTaskList.size());
}
List<TaskEntity> allRunningTaskList = taskMapper.selectAllRunning(); List<TaskEntity> allRunningTaskList = taskMapper.selectAllRunning();
for (TaskEntity taskEntity : allRunningTaskList) { for (TaskEntity taskEntity : allRunningTaskList) {
if (taskEntity.getStartTime() == null) { if (taskEntity.getStartTime() == null) {
@@ -34,6 +43,9 @@ public class TaskWatchDog {
} }
// startTime已经过去3分钟了 // startTime已经过去3分钟了
if (System.currentTimeMillis() - taskEntity.getStartTime().getTime() > 1000 * 60 * 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分钟未完成!"); content.append("当前【").append(taskEntity.getWorkerId()).append("】渲染机的【").append(taskEntity.getId()).append("】任务已超过3分钟未完成!");
} }
} }

View File

@@ -147,4 +147,9 @@
where status = 0 and worker_id is null and FIND_IN_SET(scenic_id, #{scenicId}) where status = 0 and worker_id is null and FIND_IN_SET(scenic_id, #{scenicId})
limit 1 limit 1
</select> </select>
<select id="selectAllFailed" resultType="com.ycwl.basic.model.pc.task.entity.TaskEntity">
select *
from task
where status = 3
</select>
</mapper> </mapper>