1.启动增加检查监控策略机制;

2.cpu上报数据单位优化
This commit is contained in:
qiminbao
2025-10-30 17:41:33 +08:00
parent 85ab66fe6e
commit c4bb76049a
3 changed files with 5 additions and 1 deletions
@@ -90,6 +90,7 @@ public class AppInitializer implements CommandLineRunner {
dynamicTaskService.scheduleTask("networkDetect", businessTasks::networkDetectTask, milli, 300000); dynamicTaskService.scheduleTask("networkDetect", businessTasks::networkDetectTask, milli, 300000);
// 检测监控策略配置 // 检测监控策略配置
AssertLog.info("检测监控策略配置");
agentService.checkMonitor(); agentService.checkMonitor();
}else{ }else{
//未注册,发送注册 //未注册,发送注册
@@ -280,6 +280,7 @@ public class AgentServiceImpl implements AgentService {
dynamicTaskService.scheduleTask("policy", businessTasks::policyTask, milli, 60000); dynamicTaskService.scheduleTask("policy", businessTasks::policyTask, milli, 60000);
// 检测监控策略配置 // 检测监控策略配置
AssertLog.info("检测监控策略配置");
checkMonitor(); checkMonitor();
} }
@@ -1054,6 +1055,7 @@ public class AgentServiceImpl implements AgentService {
.collect(Collectors.toList()); .collect(Collectors.toList());
List<CollectEO> collectList = new ArrayList<>(); List<CollectEO> collectList = new ArrayList<>();
for (String data : lines) { for (String data : lines) {
AssertLog.info("监控策略信息:{}",data);
if(StringUtils.isNotBlank(data)){ if(StringUtils.isNotBlank(data)){
if(data.startsWith("{") && data.endsWith("}")){ if(data.startsWith("{") && data.endsWith("}")){
JSONObject object = JSONObject.parseObject(data); JSONObject object = JSONObject.parseObject(data);
@@ -1080,6 +1082,7 @@ public class AgentServiceImpl implements AgentService {
} }
} }
if(CollectionUtil.isNotEmpty(collectList)){ if(CollectionUtil.isNotEmpty(collectList)){
AssertLog.info("监控策略配置信息:{}",JSON.toJSONString(collectList));
for (CollectEO c : collectList) { for (CollectEO c : collectList) {
String type = c.getType(); String type = c.getType();
boolean collect = c.isCollect(); boolean collect = c.isCollect();
@@ -47,7 +47,7 @@ public class CPUServiceImpl implements CPUService {
TimeUnit.SECONDS.sleep(1); TimeUnit.SECONDS.sleep(1);
// 正式采样 // 正式采样
long[] prevTicks = processor.getSystemCpuLoadTicks(); long[] prevTicks = processor.getSystemCpuLoadTicks();
TimeUnit.SECONDS.sleep(1); // 更长间隔,减少抖动 TimeUnit.SECONDS.sleep(2); // 更长间隔,减少抖动
// 计算使用率 // 计算使用率
double cpuUsage = processor.getSystemCpuLoadBetweenTicks(prevTicks); double cpuUsage = processor.getSystemCpuLoadBetweenTicks(prevTicks);
cpuVO.setUti(cpuUsage * 100); // CPU使用率 cpuVO.setUti(cpuUsage * 100); // CPU使用率