95值计算方式新增1024

This commit is contained in:
gaoyutao
2025-09-16 09:47:39 +08:00
parent bdfecb7852
commit f9d4835d4c
21 changed files with 383 additions and 119 deletions

View File

@@ -1,5 +1,6 @@
package com.ruoyi.rocketmq.controller;
import com.ruoyi.common.core.utils.DateUtils;
import com.ruoyi.common.core.utils.poi.ExcelUtil;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.core.web.domain.AjaxResult;
@@ -14,7 +15,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
/**
* CPU监控信息Controller
@@ -99,4 +101,47 @@ public class InitialCpuInfoController extends BaseController
{
return toAjax(initialCpuInfoService.deleteInitialCpuInfoByIds(ids));
}
/**
* 查询CPU监控信息列表并封装为多折线ECharts图表数据
*/
@RequiresPermissions("rocketmq:cpuInfo:list")
@PostMapping("/cpuLoadEcharts")
public AjaxResult cpuLoadEcharts(@RequestBody InitialCpuInfo initialCpuInfo) {
// 1. 查询原始CPU监控数据并按时间排序
List<InitialCpuInfo> list = initialCpuInfoService.selectInitialCpuInfoList(initialCpuInfo)
.stream()
.sorted(Comparator.comparing(InitialCpuInfo::getCreateTime))
.collect(Collectors.toList());
// 2. 封装为ECharts图表数据格式
Map<String, Object> echartsData = new HashMap<>();
// 确保X轴和Y轴数据顺序一致的处理
List<String> xAxisData = new ArrayList<>();
List<Long> load1Data = new ArrayList<>();
List<Long> load5Data = new ArrayList<>();
List<Long> load15Data = new ArrayList<>();
List<Long> utiData = new ArrayList<>();
for (InitialCpuInfo info : list) {
xAxisData.add(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", info.getCreateTime()));
load1Data.add(info.getAvg1());
load5Data.add(info.getAvg5());
load15Data.add(info.getAvg15());
utiData.add(info.getUti());
}
// 构建Y轴数据
Map<String, Object> yData = new HashMap<>();
yData.put("load1Data", load1Data);
yData.put("load5Data", load5Data);
yData.put("load15Data", load15Data);
yData.put("utiData", utiData);
echartsData.put("xData", xAxisData);
echartsData.put("yData", yData);
return success(echartsData);
}
}

View File

@@ -69,4 +69,8 @@ public class InitialCpuInfo extends BaseEntity
/** CPU用户进程所花费的时间(秒) */
@Excel(name = "CPU用户进程所花费的时间")
private Long user;
/** 开始时间 */
private String startTime;
/** 结束时间 */
private String endTime;
}

View File

@@ -1,6 +1,11 @@
package com.ruoyi.rocketmq.service.impl;
import com.github.pagehelper.PageInfo;
import com.ruoyi.common.core.constant.SecurityConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.DateUtils;
import com.ruoyi.common.core.web.page.PageDomain;
import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.rocketmq.domain.RmInitialMonitorItem;
import com.ruoyi.rocketmq.domain.RmMonitorTemplate;
import com.ruoyi.rocketmq.domain.RmTemplateLinux;
@@ -12,6 +17,8 @@ import com.ruoyi.rocketmq.mapper.RmTemplateLinuxMapper;
import com.ruoyi.rocketmq.mapper.RmTemplateSwitchMapper;
import com.ruoyi.rocketmq.service.IRmMonitorTemplateService;
import com.ruoyi.rocketmq.utils.DataProcessUtil;
import com.ruoyi.system.api.RemoteRevenueConfigService;
import com.ruoyi.system.api.domain.RmResourceRegistrationRemote;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -22,6 +29,7 @@ import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import static com.ruoyi.common.core.utils.PageUtils.startPage;
/**
* 监控模板Service业务层处理
*
@@ -39,6 +47,8 @@ public class RmMonitorTemplateServiceImpl implements IRmMonitorTemplateService
private RmTemplateSwitchMapper rmTemplateSwitchMapper;
@Autowired
private RmInitialMonitorItemMapper rmInitialMonitorItemMapper;
@Autowired
private RemoteRevenueConfigService remoteRevenueConfigService;
/**
* 查询监控模板
*
@@ -210,5 +220,4 @@ public class RmMonitorTemplateServiceImpl implements IRmMonitorTemplateService
return result;
}
}