snmp采集工具优化,采集数据入库优化。

This commit is contained in:
gaoyutao
2025-10-20 18:17:44 +08:00
parent b0e63880fc
commit 52728eba49
13 changed files with 336 additions and 27 deletions
@@ -137,7 +137,7 @@ public class InitialSwitchInfoDetailsServiceImpl implements IInitialSwitchInfoDe
String switchSn = details.getSwitchSn();
RmEpsTopologyManagement rmEpsTopologyManagement = new RmEpsTopologyManagement();
rmEpsTopologyManagement.setInterfaceName(interfaceName);
rmEpsTopologyManagement.setSwitchSn(switchSn);
rmEpsTopologyManagement.setSwitchIpAddress(details.getSwitchIp());
List<RmEpsTopologyManagement> managements = rmEpsTopologyManagementMapper.selectRmEpsTopologyManagementList(rmEpsTopologyManagement);
// 赋值
if(!managements.isEmpty()){
@@ -1,7 +1,12 @@
package com.ruoyi.system.service.impl;
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.utils.StringUtils;
import com.ruoyi.common.core.utils.uuid.IdUtils;
import com.ruoyi.system.api.RemoteRocketMqService;
import com.ruoyi.system.api.domain.RmMonitorPolicyRemote;
import com.ruoyi.system.domain.RmSwitchInterfaceInfo;
import com.ruoyi.system.domain.RmSwitchManagement;
import com.ruoyi.system.mapper.RmSwitchInterfaceInfoMapper;
@@ -25,6 +30,8 @@ public class RmSwitchManagementServiceImpl implements IRmSwitchManagementService
private RmSwitchManagementMapper rmSwitchManagementMapper;
@Autowired
private RmSwitchInterfaceInfoMapper rmSwitchInterfaceInfoMapper;
@Autowired
private RemoteRocketMqService remoteRocketMqService;
/**
* 查询交换机管理
@@ -65,11 +72,45 @@ public class RmSwitchManagementServiceImpl implements IRmSwitchManagementService
* @return 结果
*/
@Override
public int insertRmSwitchManagement(RmSwitchManagement rmSwitchManagement)
{
public int insertRmSwitchManagement(RmSwitchManagement rmSwitchManagement) {
// 初始化交换机信息
rmSwitchManagement.setCreateTime(DateUtils.getNowDate());
rmSwitchManagement.setClientId(IdUtils.simpleUUID());
return rmSwitchManagementMapper.insertRmSwitchManagement(rmSwitchManagement);
String clientId= IdUtils.simpleUUID();
rmSwitchManagement.setClientId(clientId);
rmSwitchManagementMapper.insertRmSwitchManagement(rmSwitchManagement);
// 查询并更新优先级为0的交换机策略
R<List<RmMonitorPolicyRemote>> policyMsgR = remoteRocketMqService.getPolicyMsgInner(
new RmMonitorPolicyRemote() {{
setPriority("0");
setResourceType("switch");
}},
SecurityConstants.INNER
);
if (policyMsgR.getData() != null && !policyMsgR.getData().isEmpty()) {
RmMonitorPolicyRemote policyMsg = policyMsgR.getData().get(0);
// 构建设备信息字符串
String newDeviceList = StringUtils.isBlank(policyMsg.getDeployDevice())
? clientId
: policyMsg.getDeployDevice() + "\n" + clientId;
// 更新策略设备列表
remoteRocketMqService.updatePolicyMsgInner(
new RmMonitorPolicyRemote() {{
setId(policyMsg.getId());
setDeployDevice(newDeviceList);
setUpdateTime(DateUtils.getNowDate());
}},
SecurityConstants.INNER
);
// 下发更新后的策略
remoteRocketMqService.innerIssueSwitchPolicy(policyMsg.getId(), SecurityConstants.INNER);
}
return 1;
}
/**