From 53de22eaf60c6ad9b315ffc3bf26756e2cbb1e00 Mon Sep 17 00:00:00 2001 From: qiminbao Date: Thu, 4 Sep 2025 18:14:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=BD=91=E5=8D=A1=E3=80=81?= =?UTF-8?q?=E4=BA=A4=E6=8D=A2=E6=9C=BA=E9=87=87=E9=9B=86=E5=BB=B6=E8=BF=9F?= =?UTF-8?q?=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scheduler/service/AppInitializer.java | 68 +++++++++---------- .../tongran/agentserver/utils/AgentUtil.java | 14 ++-- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/src/main/java/com/tongran/agentserver/scheduler/service/AppInitializer.java b/src/main/java/com/tongran/agentserver/scheduler/service/AppInitializer.java index dd259b6..c15482a 100644 --- a/src/main/java/com/tongran/agentserver/scheduler/service/AppInitializer.java +++ b/src/main/java/com/tongran/agentserver/scheduler/service/AppInitializer.java @@ -33,48 +33,48 @@ public class AppInitializer implements CommandLineRunner { dynamicTaskService.scheduleTask("heartbeat", businessTasks::heartbeatTask, 5000, 30000); - // 每300秒执行CPU信息采集任务 - AssertLog.info("初始化启动CPU信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 25000, 300000); - dynamicTaskService.scheduleTask("cpu", - businessTasks::cpuTask, 25000, 300000); // 25秒后开始,每300秒执行 - - // 每300秒执行磁盘信息采集任务 - AssertLog.info("初始化启动磁盘信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 35000, 300000); - dynamicTaskService.scheduleTask("disk", - businessTasks::diskTask, 35000, 300000); // 35秒后开始,每300秒执行 - - // 每300秒执行系统信息采集任务 - AssertLog.info("初始化启动系统信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 40000, 300000); - dynamicTaskService.scheduleTask("system", - businessTasks::systemTask, 40000, 300000); // 40秒后开始,每300秒执行 - - // 每300秒执行容器信息采集任务 - AssertLog.info("初始化启动容器信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 45000, 300000); - dynamicTaskService.scheduleTask("docker", - businessTasks::dockerTask, 45000, 300000); // 45秒后开始,每300秒执行 - - // 每300秒执行内存信息采集任务 - AssertLog.info("初始化启动内存信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 55000, 300000); - dynamicTaskService.scheduleTask("memory", - businessTasks::memoryTask, 55000, 300000); // 55秒后开始,每300秒执行 +// // 每300秒执行CPU信息采集任务 +// AssertLog.info("初始化启动CPU信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 25000, 300000); +// dynamicTaskService.scheduleTask("cpu", +// businessTasks::cpuTask, 25000, 300000); // 25秒后开始,每300秒执行 +// +// // 每300秒执行磁盘信息采集任务 +// AssertLog.info("初始化启动磁盘信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 35000, 300000); +// dynamicTaskService.scheduleTask("disk", +// businessTasks::diskTask, 35000, 300000); // 35秒后开始,每300秒执行 +// +// // 每300秒执行系统信息采集任务 +// AssertLog.info("初始化启动系统信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 40000, 300000); +// dynamicTaskService.scheduleTask("system", +// businessTasks::systemTask, 40000, 300000); // 40秒后开始,每300秒执行 +// +// // 每300秒执行容器信息采集任务 +// AssertLog.info("初始化启动容器信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 45000, 300000); +// dynamicTaskService.scheduleTask("docker", +// businessTasks::dockerTask, 45000, 300000); // 45秒后开始,每300秒执行 +// +// // 每300秒执行内存信息采集任务 +// AssertLog.info("初始化启动内存信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 55000, 300000); +// dynamicTaskService.scheduleTask("memory", +// businessTasks::memoryTask, 55000, 300000); // 55秒后开始,每300秒执行 - //获取当前时间距离下一个“分钟为 0 或 5”的时间点还差多少秒 - long seconds = AgentUtil.secondsToNext5Minute() * 1000; + //获取当前时间距离下一个“分钟为 0 或 5”的时间点还差多少毫秒 + long millis = AgentUtil.millisecondsToNext5Minute(); // 每300秒执行网络信息采集任务 - AssertLog.info("初始化启动网络信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", seconds, 300000); + AssertLog.info("初始化启动网络信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", millis, 300000); dynamicTaskService.scheduleTask("net", - businessTasks::netTask, seconds, 300000); // 65秒后开始,每300秒执行 + businessTasks::netTask, millis, 300000); // 65秒后开始,每300秒执行 - // 每300秒执行挂载信息采集任务 - AssertLog.info("初始化启动挂载信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 75000, 300000); - dynamicTaskService.scheduleTask("point", - businessTasks::pointTask, 75000, 300000); // 75秒后开始,每300秒执行 +// // 每300秒执行挂载信息采集任务 +// AssertLog.info("初始化启动挂载信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", 75000, 300000); +// dynamicTaskService.scheduleTask("point", +// businessTasks::pointTask, 75000, 300000); // 75秒后开始,每300秒执行 // 每300秒执行交换机信息采集任务 - AssertLog.info("初始化启动交换机信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", seconds, 300000); + AssertLog.info("初始化启动交换机信息采集定时任务 - 延迟: {}ms, 间隔: {}ms", millis, 300000); dynamicTaskService.scheduleTask("switchBoard", - businessTasks::switchBoardTask, seconds, 300000); // 85秒后开始,每300秒执行 + businessTasks::switchBoardTask, millis, 300000); // 85秒后开始,每300秒执行 } diff --git a/src/main/java/com/tongran/agentserver/utils/AgentUtil.java b/src/main/java/com/tongran/agentserver/utils/AgentUtil.java index 9293ed1..51652e5 100644 --- a/src/main/java/com/tongran/agentserver/utils/AgentUtil.java +++ b/src/main/java/com/tongran/agentserver/utils/AgentUtil.java @@ -106,29 +106,29 @@ public class AgentUtil { } /** - * 获取当前时间距离下一个“分钟为 0 或 5”的时间点还差多少秒 + * 获取当前时间距离下一个“分钟为 0 或 5”的时间点还差多少毫秒 * 例如:xx:00, xx:05, xx:10, ..., xx:55 */ - public static long secondsToNext5Minute() { + public static long millisecondsToNext5Minute() { LocalDateTime now = LocalDateTime.now(); // 当前分钟 int minute = now.getMinute(); - // 计算下一个 5 分钟整点(向上取整到 5 的倍数) - int nextMinute = ((minute / 5) + 1) * 5; // 例如:12 → 15, 17 → 20, 58 → 60 + // 计算下一个 5 分钟整点(向上取整) + int nextMinute = ((minute / 5) + 1) * 5; LocalDateTime nextTime; if (nextMinute < 60) { // 在当前小时内 nextTime = now.withMinute(nextMinute).withSecond(0).withNano(0); } else { - // 跨小时,例如 10:58 → 11:00 + // 跨小时,如 10:58 → 11:00 nextTime = now.plusHours(1).withMinute(0).withSecond(0).withNano(0); } - // 计算相差的秒数 - return ChronoUnit.SECONDS.between(now, nextTime); + // 计算相差的毫秒数 + return ChronoUnit.MILLIS.between(now, nextTime); } }