服务器系统其他信息数据表分表。

交换机光模块信息数据表分表。
This commit is contained in:
gaoyutao
2026-01-04 18:10:13 +08:00
parent 4651da4fe4
commit 2593c58741
19 changed files with 597 additions and 49 deletions
@@ -0,0 +1,69 @@
package com.tongran.rocketmq.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.tongran.common.core.annotation.Excel;
import com.tongran.common.core.web.domain.BaseEntity;
/**
* 光模块名称存储对象 all_moudle_name
*
* @author tongran
* @date 2026-01-04
*/
public class AllMoudleName extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 自增主键 */
private Long id;
/** 客户端ID */
@Excel(name = "客户端ID")
private String clientId;
/** 光模块名称 */
@Excel(name = "光模块名称")
private String name;
public void setId(Long id)
{
this.id = id;
}
public Long getId()
{
return id;
}
public void setClientId(String clientId)
{
this.clientId = clientId;
}
public String getClientId()
{
return clientId;
}
public void setName(String name)
{
this.name = name;
}
public String getName()
{
return name;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("clientId", getClientId())
.append("name", getName())
.append("createTime", getCreateTime())
.append("updateTime", getUpdateTime())
.toString();
}
}
@@ -5,6 +5,7 @@ import com.tongran.common.core.web.domain.BaseEntity;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
* 光模块信息对象 initial_switch_optical_module
@@ -51,4 +52,8 @@ public class InitialSwitchOpticalModule extends BaseEntity
private String startTime;
/** 结束时间 */
private String endTime;
/** 表名 */
private String tableName;
private List<InitialSwitchOpticalModule> list;
}
@@ -33,4 +33,6 @@ public class InitialSystemOtherCollectData extends BaseEntity
private String startTime;
/** 结束时间 */
private String endTime;
/** 表名 */
private String tableName;
}
@@ -370,15 +370,15 @@ public class DeviceMessageHandler {
private void handleSwitchModuleMessage(CollectDataVo switchDataVo, String clientId){
List<InitialSwitchOpticalModule> moduleList = SwitchJsonDataParser.parseJsonData(switchDataVo.getValue(), InitialSwitchOpticalModule.class);
if (!moduleList.isEmpty()){
// 时间戳转换
long timestamp = switchDataVo.getTimestamp();
long millis = timestamp * 1000;
Date createTime = new Date(millis / 1000 * 1000); // 去除毫秒
for (InitialSwitchOpticalModule insertData : moduleList) {
// 时间戳转换
long timestamp = switchDataVo.getTimestamp();
long millis = timestamp * 1000;
Date createTime = new Date(millis / 1000 * 1000); // 去除毫秒
insertData.setClientId(clientId);
insertData.setCreateTime(createTime);
}
initialSwitchOpticalModuleService.batchInitialSwitchOpticalModule(moduleList);
initialSwitchOpticalModuleService.batchInitialSwitchOpticalModule(moduleList, createTime);
}
}
@@ -0,0 +1,64 @@
package com.tongran.rocketmq.mapper;
import com.tongran.rocketmq.domain.AllMoudleName;
import java.util.List;
/**
* 光模块名称存储Mapper接口
*
* @author tongran
* @date 2026-01-04
*/
public interface AllMoudleNameMapper
{
/**
* 查询光模块名称存储
*
* @param id 光模块名称存储主键
* @return 光模块名称存储
*/
public AllMoudleName selectAllMoudleNameById(Long id);
/**
* 查询光模块名称存储列表
*
* @param allMoudleName 光模块名称存储
* @return 光模块名称存储集合
*/
public List<AllMoudleName> selectAllMoudleNameList(AllMoudleName allMoudleName);
/**
* 新增光模块名称存储
*
* @param allMoudleName 光模块名称存储
* @return 结果
*/
public int insertAllMoudleName(AllMoudleName allMoudleName);
/**
* 修改光模块名称存储
*
* @param allMoudleName 光模块名称存储
* @return 结果
*/
public int updateAllMoudleName(AllMoudleName allMoudleName);
/**
* 删除光模块名称存储
*
* @param id 光模块名称存储主键
* @return 结果
*/
public int deleteAllMoudleNameById(Long id);
/**
* 批量删除光模块名称存储
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteAllMoudleNameByIds(Long[] ids);
void batchInsertMoudleName(List<AllMoudleName> nameList);
}
@@ -63,9 +63,9 @@ public interface InitialSwitchOpticalModuleMapper
/**
* 批量新增光模块信息
* @param list
* @param initialSwitchOpticalModule
*/
int batchInitialSwitchOpticalModule(List<InitialSwitchOpticalModule> list);
int batchInitialSwitchOpticalModule(InitialSwitchOpticalModule initialSwitchOpticalModule);
/**
* 光模块基础信息
@@ -0,0 +1,65 @@
package com.tongran.rocketmq.service;
import com.tongran.rocketmq.domain.AllMoudleName;
import com.tongran.rocketmq.domain.InitialSwitchOpticalModule;
import java.util.List;
/**
* 光模块名称存储Service接口
*
* @author tongran
* @date 2026-01-04
*/
public interface IAllMoudleNameService
{
/**
* 查询光模块名称存储
*
* @param id 光模块名称存储主键
* @return 光模块名称存储
*/
public AllMoudleName selectAllMoudleNameById(Long id);
/**
* 查询光模块名称存储列表
*
* @param allMoudleName 光模块名称存储
* @return 光模块名称存储集合
*/
public List<AllMoudleName> selectAllMoudleNameList(AllMoudleName allMoudleName);
/**
* 新增光模块名称存储
*
* @param allMoudleName 光模块名称存储
* @return 结果
*/
public int insertAllMoudleName(AllMoudleName allMoudleName);
/**
* 修改光模块名称存储
*
* @param allMoudleName 光模块名称存储
* @return 结果
*/
public int updateAllMoudleName(AllMoudleName allMoudleName);
/**
* 批量删除光模块名称存储
*
* @param ids 需要删除的光模块名称存储主键集合
* @return 结果
*/
public int deleteAllMoudleNameByIds(Long[] ids);
/**
* 删除光模块名称存储信息
*
* @param id 光模块名称存储主键
* @return 结果
*/
public int deleteAllMoudleNameById(Long id);
void batchInsertMoudleName(List<InitialSwitchOpticalModule> dataList);
}
@@ -2,6 +2,7 @@ package com.tongran.rocketmq.service;
import com.tongran.rocketmq.domain.InitialSwitchOpticalModule;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -65,7 +66,7 @@ public interface IInitialSwitchOpticalModuleService
* 批量插入光模块信息
* @param list
*/
int batchInitialSwitchOpticalModule(List<InitialSwitchOpticalModule> list);
int batchInitialSwitchOpticalModule(List<InitialSwitchOpticalModule> list, Date createTime);
/**
* 光模块基础信息
@@ -0,0 +1,116 @@
package com.tongran.rocketmq.service.impl;
import com.tongran.common.core.utils.DateUtils;
import com.tongran.rocketmq.domain.AllMoudleName;
import com.tongran.rocketmq.domain.InitialSwitchOpticalModule;
import com.tongran.rocketmq.mapper.AllMoudleNameMapper;
import com.tongran.rocketmq.service.IAllMoudleNameService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* 光模块名称存储Service业务层处理
*
* @author tongran
* @date 2026-01-04
*/
@Service
public class AllMoudleNameServiceImpl implements IAllMoudleNameService
{
@Autowired
private AllMoudleNameMapper allMoudleNameMapper;
/**
* 查询光模块名称存储
*
* @param id 光模块名称存储主键
* @return 光模块名称存储
*/
@Override
public AllMoudleName selectAllMoudleNameById(Long id)
{
return allMoudleNameMapper.selectAllMoudleNameById(id);
}
/**
* 查询光模块名称存储列表
*
* @param allMoudleName 光模块名称存储
* @return 光模块名称存储
*/
@Override
public List<AllMoudleName> selectAllMoudleNameList(AllMoudleName allMoudleName)
{
return allMoudleNameMapper.selectAllMoudleNameList(allMoudleName);
}
/**
* 新增光模块名称存储
*
* @param allMoudleName 光模块名称存储
* @return 结果
*/
@Override
public int insertAllMoudleName(AllMoudleName allMoudleName)
{
allMoudleName.setCreateTime(DateUtils.getNowDate());
return allMoudleNameMapper.insertAllMoudleName(allMoudleName);
}
/**
* 修改光模块名称存储
*
* @param allMoudleName 光模块名称存储
* @return 结果
*/
@Override
public int updateAllMoudleName(AllMoudleName allMoudleName)
{
allMoudleName.setUpdateTime(DateUtils.getNowDate());
return allMoudleNameMapper.updateAllMoudleName(allMoudleName);
}
/**
* 批量删除光模块名称存储
*
* @param ids 需要删除的光模块名称存储主键
* @return 结果
*/
@Override
public int deleteAllMoudleNameByIds(Long[] ids)
{
return allMoudleNameMapper.deleteAllMoudleNameByIds(ids);
}
/**
* 删除光模块名称存储信息
*
* @param id 光模块名称存储主键
* @return 结果
*/
@Override
public int deleteAllMoudleNameById(Long id)
{
return allMoudleNameMapper.deleteAllMoudleNameById(id);
}
@Override
public void batchInsertMoudleName(List<InitialSwitchOpticalModule> dataList) {
if(dataList == null){
dataList = new ArrayList<>();
}
List<AllMoudleName> nameList = new ArrayList<>();
for (InitialSwitchOpticalModule initialSwitchOpticalModule : dataList) {
AllMoudleName allMoudleName = new AllMoudleName();
allMoudleName.setClientId(initialSwitchOpticalModule.getClientId());
allMoudleName.setName(initialSwitchOpticalModule.getFiberPortName());
allMoudleName.setCreateTime(initialSwitchOpticalModule.getCreateTime());
allMoudleName.setUpdateTime(DateUtils.getNowDate());
nameList.add(allMoudleName);
}
allMoudleNameMapper.batchInsertMoudleName(nameList);
}
}
@@ -2,16 +2,21 @@ package com.tongran.rocketmq.service.impl;
import com.tongran.common.core.utils.DateUtils;
import com.tongran.common.core.utils.EchartsDataUtils;
import com.tongran.common.core.utils.TableSubUtil;
import com.tongran.rocketmq.domain.InitialSwitchOpticalModule;
import com.tongran.rocketmq.mapper.InitialSwitchOpticalModuleMapper;
import com.tongran.rocketmq.service.IAllMoudleNameService;
import com.tongran.rocketmq.service.IInitialSwitchOpticalModuleService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Transactional;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
* 光模块信息Service业务层处理
@@ -20,10 +25,15 @@ import java.util.function.Function;
* @date 2025-09-22
*/
@Service
@Slf4j
public class InitialSwitchOpticalModuleServiceImpl implements IInitialSwitchOpticalModuleService
{
@Autowired
private InitialSwitchOpticalModuleMapper initialSwitchOpticalModuleMapper;
@Autowired
private IAllMoudleNameService allMoudleNameService;
private final static String TABLE_PREFIX = "initial_switch_optical_module";
/**
* 查询光模块信息
@@ -98,13 +108,72 @@ public class InitialSwitchOpticalModuleServiceImpl implements IInitialSwitchOpti
return initialSwitchOpticalModuleMapper.deleteInitialSwitchOpticalModuleById(id);
}
/**
* 分表查询服务器其他信息
* @param queryParam
* @return
*/
public List<InitialSwitchOpticalModule> getSwitchOpticalModuleSharding(InitialSwitchOpticalModule queryParam) {
// 获取涉及的表名
Set<String> tableNames = TableSubUtil.getExistingTableNamesBetween(queryParam.getStartTime(), queryParam.getEndTime(), TABLE_PREFIX);
// 并行查询各表
return tableNames.parallelStream()
.flatMap(tableName -> {
InitialSwitchOpticalModule condition = new InitialSwitchOpticalModule();
condition.setTableName(tableName);
condition.setClientId(queryParam.getClientId());
condition.setFiberPortName(queryParam.getFiberPortName());
condition.setStartTime(queryParam.getStartTime());
condition.setEndTime(queryParam.getEndTime());
return initialSwitchOpticalModuleMapper.selectInitialSwitchOpticalModuleList(condition).stream();
})
.collect(Collectors.toList());
}
/**
* 批量新增光模块信息
* @param list
*/
@Override
public int batchInitialSwitchOpticalModule(List<InitialSwitchOpticalModule> list) {
return initialSwitchOpticalModuleMapper.batchInitialSwitchOpticalModule(list);
@Transactional(rollbackFor = Exception.class, isolation = Isolation.READ_COMMITTED)
public int batchInitialSwitchOpticalModule(List<InitialSwitchOpticalModule> list, Date createTime) {
if (list == null || list.isEmpty()) {
return 0;
}
// 按表名分组批量插入
Map<String, List<InitialSwitchOpticalModule>> groupedData = list.stream()
.map(data -> {
try {
InitialSwitchOpticalModule processed = new InitialSwitchOpticalModule();
BeanUtils.copyProperties(data,processed);
if (data.getCreateTime() == null) {
data.setCreateTime(DateUtils.getNowDate());
}
processed.setTableName(TableSubUtil.getTableName(createTime, TABLE_PREFIX));
return processed;
} catch (Exception e){
log.error("数据处理失败",e.getMessage());
return null;
}
}).collect(Collectors.groupingBy(
InitialSwitchOpticalModule::getTableName,
LinkedHashMap::new, // 保持插入顺序
Collectors.toList()));
groupedData.forEach((tableName, dataList) -> {
try {
InitialSwitchOpticalModule data = new InitialSwitchOpticalModule();
data.setTableName(tableName);
data.setList(dataList);
initialSwitchOpticalModuleMapper.batchInitialSwitchOpticalModule(data);
// 记录光模块名称
allMoudleNameService.batchInsertMoudleName(dataList);
} catch (Exception e) {
log.error("表{}插入失败", tableName, e);
throw new RuntimeException("批量插入失败", e);
}
});
return 1;
}
/**
@@ -114,6 +183,8 @@ public class InitialSwitchOpticalModuleServiceImpl implements IInitialSwitchOpti
*/
@Override
public List<InitialSwitchOpticalModule> switchOpticalModuleMsg(InitialSwitchOpticalModule initialSwitchOpticalModule) {
String tableName = TableSubUtil.getTableName(DateUtils.getNowDate(), TABLE_PREFIX);
initialSwitchOpticalModule.setTableName(tableName);
return initialSwitchOpticalModuleMapper.switchOpticalModuleMsg(initialSwitchOpticalModule);
}
@@ -134,7 +205,7 @@ public class InitialSwitchOpticalModuleServiceImpl implements IInitialSwitchOpti
*/
@Override
public Map<String, Object> opticalModuleLowThreshold(InitialSwitchOpticalModule initialSwitchOpticalModule) {
List<InitialSwitchOpticalModule> list = initialSwitchOpticalModuleMapper.selectInitialSwitchOpticalModuleList(initialSwitchOpticalModule);
List<InitialSwitchOpticalModule> list = getSwitchOpticalModuleSharding(initialSwitchOpticalModule);
Map<String, Function<InitialSwitchOpticalModule, ?>> extractors = new LinkedHashMap<>();
extractors.put("TxLowThreshold", info -> info.getHwEntityOpticalTxLowThreshold());
extractors.put("RxLowThreshold", info -> info.getHwEntityOpticalRxLowThreshold());
@@ -148,7 +219,7 @@ public class InitialSwitchOpticalModuleServiceImpl implements IInitialSwitchOpti
*/
@Override
public Map<String, Object> opticalModulePower(InitialSwitchOpticalModule initialSwitchOpticalModule) {
List<InitialSwitchOpticalModule> list = initialSwitchOpticalModuleMapper.selectInitialSwitchOpticalModuleList(initialSwitchOpticalModule);
List<InitialSwitchOpticalModule> list = getSwitchOpticalModuleSharding(initialSwitchOpticalModule);
Map<String, Function<InitialSwitchOpticalModule, ?>> extractors = new LinkedHashMap<>();
extractors.put("TxPower", info -> info.getHwEntityOpticalTxPower());
extractors.put("RxPower", info -> info.getHwEntityOpticalRxPower());
@@ -2,6 +2,7 @@ package com.tongran.rocketmq.service.impl;
import com.tongran.common.core.utils.DateUtils;
import com.tongran.common.core.utils.EchartsDataUtils;
import com.tongran.common.core.utils.TableSubUtil;
import com.tongran.common.core.utils.UnitChangeUtil;
import com.tongran.rocketmq.domain.InitialCpuInfo;
import com.tongran.rocketmq.domain.InitialSystemOtherCollectData;
@@ -30,6 +31,7 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
private InitialSystemOtherCollectDataMapper initialSystemOtherCollectDataMapper;
@Autowired
private InitialCpuInfoMapper initialCpuInfoMapper;
private final static String TABLE_PREFIX = "initial_system_other_collect_data";
/**
* 查询交换机系统其他信息采集数据
@@ -64,6 +66,8 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
@Override
public int insertInitialSystemOtherCollectData(InitialSystemOtherCollectData initialSystemOtherCollectData)
{
String tableName = TableSubUtil.getTableName(initialSystemOtherCollectData.getCreateTime(), TABLE_PREFIX);
initialSystemOtherCollectData.setTableName(tableName);
return initialSystemOtherCollectDataMapper.insertInitialSystemOtherCollectData(initialSystemOtherCollectData);
}
@@ -111,6 +115,8 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
*/
@Override
public Map getMonitorMsg(InitialSystemOtherCollectData initialSystemOtherCollectData) {
String tableName = TableSubUtil.getTableName(DateUtils.getNowDate(), TABLE_PREFIX);
initialSystemOtherCollectData.setTableName(tableName);
Map<String, Object> map = initialSystemOtherCollectDataMapper.getMonitorMsg(initialSystemOtherCollectData);
// 如果返回null,初始化一个空的Map
if (map == null) {
@@ -147,6 +153,28 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
map.put("user", cpuInfo.getUser());
return map;
}
/**
* 分表查询服务器其他信息
* @param queryParam
* @return
*/
public List<InitialSystemOtherCollectData> getOtherMsgSharding(InitialSystemOtherCollectData queryParam) {
// 获取涉及的表名
Set<String> tableNames = TableSubUtil.getExistingTableNamesBetween(queryParam.getStartTime(), queryParam.getEndTime(), TABLE_PREFIX);
// 并行查询各表
return tableNames.parallelStream()
.flatMap(tableName -> {
InitialSystemOtherCollectData condition = new InitialSystemOtherCollectData();
condition.setTableName(tableName);
condition.setClientId(queryParam.getClientId());
condition.setCollectType(queryParam.getCollectType());
condition.setStartTime(queryParam.getStartTime());
condition.setEndTime(queryParam.getEndTime());
return initialSystemOtherCollectDataMapper.selectInitialSystemOtherCollectDataList(condition).stream();
})
.collect(Collectors.toList());
}
/**
* 查询系统登陆用户数(个)监控信息列表并封装为多折线ECharts图表数据
@@ -156,7 +184,7 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
@Override
public Map<String, Object> systemUserNumEcharts(InitialSystemOtherCollectData initialSystemOtherCollectData) {
initialSystemOtherCollectData.setCollectType(ServerLogoEnum.登录用户数.getCode());
List<InitialSystemOtherCollectData> list = initialSystemOtherCollectDataMapper.selectInitialSystemOtherCollectDataList(initialSystemOtherCollectData);
List<InitialSystemOtherCollectData> list = getOtherMsgSharding(initialSystemOtherCollectData);
Map<String, Function<InitialSystemOtherCollectData, ?>> extractors = new LinkedHashMap<>();
extractors.put("usersNumData", InitialSystemOtherCollectData::getCollectValue);
@@ -172,7 +200,7 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
@Override
public Map<String, Object> systemSwapSizeFreeEcharts(InitialSystemOtherCollectData initialSystemOtherCollectData) {
initialSystemOtherCollectData.setCollectType(ServerLogoEnum.交换卷文件的可用空间.getCode());
List<InitialSystemOtherCollectData> list = initialSystemOtherCollectDataMapper.selectInitialSystemOtherCollectDataList(initialSystemOtherCollectData);
List<InitialSystemOtherCollectData> list = getOtherMsgSharding(initialSystemOtherCollectData);
Map<String, Function<InitialSystemOtherCollectData, ?>> extractors = new LinkedHashMap<>();
extractors.put("swapSizeFreeData", InitialSystemOtherCollectData::getCollectValue);
@@ -188,7 +216,7 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
@Override
public Map<String, Object> memoryUtilizationEcharts(InitialSystemOtherCollectData initialSystemOtherCollectData) {
initialSystemOtherCollectData.setCollectType(ServerLogoEnum.内存利用率.getCode());
List<InitialSystemOtherCollectData> list = initialSystemOtherCollectDataMapper.selectInitialSystemOtherCollectDataList(initialSystemOtherCollectData);
List<InitialSystemOtherCollectData> list = getOtherMsgSharding(initialSystemOtherCollectData);
Map<String, Function<InitialSystemOtherCollectData, ?>> extractors = new LinkedHashMap<>();
extractors.put("memoryUtilizationData", info -> UnitChangeUtil.formatDecimal(info.getCollectValue()));
@@ -204,7 +232,7 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
@Override
public Map<String, Object> systemSwapSizePercentEcharts(InitialSystemOtherCollectData initialSystemOtherCollectData) {
initialSystemOtherCollectData.setCollectType(ServerLogoEnum.可用交换空间百分比.getCode());
List<InitialSystemOtherCollectData> list = initialSystemOtherCollectDataMapper.selectInitialSystemOtherCollectDataList(initialSystemOtherCollectData);
List<InitialSystemOtherCollectData> list = getOtherMsgSharding(initialSystemOtherCollectData);
Map<String, Function<InitialSystemOtherCollectData, ?>> extractors = new LinkedHashMap<>();
extractors.put("swapSizePercentData", info -> UnitChangeUtil.formatDecimal(info.getCollectValue()));
@@ -220,7 +248,7 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
@Override
public Map<String, Object> memorySizeAvailableEcharts(InitialSystemOtherCollectData initialSystemOtherCollectData) {
initialSystemOtherCollectData.setCollectType(ServerLogoEnum.可用内存.getCode());
List<InitialSystemOtherCollectData> list = initialSystemOtherCollectDataMapper.selectInitialSystemOtherCollectDataList(initialSystemOtherCollectData);
List<InitialSystemOtherCollectData> list = getOtherMsgSharding(initialSystemOtherCollectData);
Map<String, Function<InitialSystemOtherCollectData, ?>> extractors = new LinkedHashMap<>();
extractors.put("memorySizeAvailableData", data -> {
@@ -243,7 +271,7 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
@Override
public Map<String, Object> memorySizePercentEcharts(InitialSystemOtherCollectData initialSystemOtherCollectData) {
initialSystemOtherCollectData.setCollectType(ServerLogoEnum.可用内存百分比.getCode());
List<InitialSystemOtherCollectData> list = initialSystemOtherCollectDataMapper.selectInitialSystemOtherCollectDataList(initialSystemOtherCollectData);
List<InitialSystemOtherCollectData> list = getOtherMsgSharding(initialSystemOtherCollectData);
Map<String, Function<InitialSystemOtherCollectData, ?>> extractors = new LinkedHashMap<>();
extractors.put("memorySizePercentData", info -> UnitChangeUtil.formatDecimal(info.getCollectValue()));
@@ -261,11 +289,11 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
public Map<String, Object> procNumEcharts(InitialSystemOtherCollectData initialSystemOtherCollectData) {
// 查询总进程数数据
initialSystemOtherCollectData.setCollectType(ServerLogoEnum.进程数.getCode());
List<InitialSystemOtherCollectData> procNumList = initialSystemOtherCollectDataMapper.selectInitialSystemOtherCollectDataList(initialSystemOtherCollectData);
List<InitialSystemOtherCollectData> procNumList = getOtherMsgSharding(initialSystemOtherCollectData);
// 查询正在运行的进程数数据
initialSystemOtherCollectData.setCollectType(ServerLogoEnum.正在运行的进程数.getCode());
List<InitialSystemOtherCollectData> procNumRunList = initialSystemOtherCollectDataMapper.selectInitialSystemOtherCollectDataList(initialSystemOtherCollectData);
List<InitialSystemOtherCollectData> procNumRunList = getOtherMsgSharding(initialSystemOtherCollectData);
// 先按时间排序
procNumList.sort(Comparator.comparing(InitialSystemOtherCollectData::getCreateTime));
@@ -322,6 +350,8 @@ public class InitialSystemOtherCollectDataServiceImpl implements IInitialSystemO
@Override
public int deleteInitialSystemOtherCollectData(InitialSystemOtherCollectData deleteData) {
String tableName = TableSubUtil.getTableName(deleteData.getCreateTime(), TABLE_PREFIX);
deleteData.setTableName(tableName);
return initialSystemOtherCollectDataMapper.deleteInitialSystemOtherCollectData(deleteData);
}
}
@@ -268,15 +268,15 @@ public class ProcessSwitchCollectDataService {
private void handleSwitchModuleMessage(CollectDataVo switchDataVo, String clientId){
List<InitialSwitchOpticalModule> moduleList = SwitchJsonDataParser.parseJsonData(switchDataVo.getValue(), InitialSwitchOpticalModule.class);
if (!moduleList.isEmpty()){
// 时间戳转换
long timestamp = switchDataVo.getTimestamp();
long millis = timestamp * 1000;
Date createTime = new Date(millis / 1000 * 1000); // 去除毫秒
for (InitialSwitchOpticalModule insertData : moduleList) {
// 时间戳转换
long timestamp = switchDataVo.getTimestamp();
long millis = timestamp * 1000;
Date createTime = new Date(millis / 1000 * 1000); // 去除毫秒
insertData.setClientId(clientId);
insertData.setCreateTime(createTime);
}
initialSwitchOpticalModuleService.batchInitialSwitchOpticalModule(moduleList);
initialSwitchOpticalModuleService.batchInitialSwitchOpticalModule(moduleList, createTime);
}
}