设备监控

monitor
sunjianxi 1 year ago
parent 172376c1fd
commit 2dcdc1d5d0
  1. 3
      src/main/java/org/springblade/common/constant/MonitorConstant.java
  2. 8
      src/main/java/org/springblade/modules/monitor/controller/MonitorController.java
  3. 55
      src/main/java/org/springblade/modules/monitor/controller/SystemMonitorController.java
  4. 12
      src/main/java/org/springblade/modules/monitor/entity/ConfigMonitor.java
  5. 2
      src/main/java/org/springblade/modules/monitor/mapper/ConfigMonitorMapper.xml
  6. 5
      src/main/java/org/springblade/modules/monitor/service/IConfigMonitorService.java
  7. 24
      src/main/java/org/springblade/modules/monitor/service/impl/ConfigMonitorServiceImpl.java

@ -59,4 +59,7 @@ public interface MonitorConstant {
String WEB = "web"; String WEB = "web";
String REDIS = "redis";
String MYSQL = "mysql";
} }

@ -16,14 +16,6 @@ import java.util.List;
public class MonitorController { public class MonitorController {
private final IConfigMonitorService configMonitorService; private final IConfigMonitorService configMonitorService;
/**
* 获取所有监控设备
*/
@GetMapping("/tree")
public R<List<ConfigMonitorVO>> tree(){
List<ConfigMonitorVO> list = configMonitorService.tree();
return R.data(list);
}
/** /**
* 判断设备是否正常 * 判断设备是否正常

@ -1,11 +1,17 @@
package org.springblade.modules.monitor.controller; package org.springblade.modules.monitor.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springblade.core.tool.api.R; import org.springblade.core.tool.api.R;
import org.springblade.modules.monitor.entity.ConfigMonitor;
import org.springblade.modules.monitor.service.IConfigMonitorService;
import org.springblade.modules.monitor.vo.ConfigMonitorVO;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* 业务数据监控控制器 * 业务数据监控控制器
* *
@ -16,8 +22,57 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/monitor-system") @RequestMapping("/monitor-system")
public class SystemMonitorController { public class SystemMonitorController {
private final IConfigMonitorService configMonitorService;
@GetMapping("/detail") @GetMapping("/detail")
public R test() { public R test() {
return null; return null;
} }
/**
* 获取所有监控设备
*/
@GetMapping("/tree")
public R<List<ConfigMonitorVO>> tree(){
List<ConfigMonitorVO> list = configMonitorService.tree();
return R.data(list);
}
/**
* 获取所有监控设备
*/
@GetMapping("/getMonitorList")
public R<List<ConfigMonitor>> getMonitorList(){
List<ConfigMonitor> list = configMonitorService.list(new LambdaQueryWrapper<>());
return R.data(list);
}
/**
*获取服务列表
*/
@GetMapping("/getServiceList")
public R<List<ConfigMonitor>> getServiceList(){
List<ConfigMonitor> list = configMonitorService.getServiceList();
return R.data(list);
}
/**
*获取redismysql列表
*/
@GetMapping("/getMiddleList")
public R<List<ConfigMonitor>> getMiddleList(){
List<ConfigMonitor> list = configMonitorService.getMiddleList();
return R.data(list);
}
/**
*获取服务器运行参数列表
*/
@GetMapping("/getServerParamsList")
public R<List<ConfigMonitor>> getServerParamsList(){
List<ConfigMonitor> list = configMonitorService.getServerParamsList();
return R.data(list);
}
} }

@ -63,6 +63,12 @@ public class ConfigMonitor extends BaseEntity {
@ApiModelProperty(value = "ip") @ApiModelProperty(value = "ip")
private String ip; private String ip;
/**
* 名称
*/
@ApiModelProperty(value = "名称")
private String name;
/** /**
* 监控类型 * 监控类型
*/ */
@ -105,4 +111,10 @@ public class ConfigMonitor extends BaseEntity {
*/ */
@ApiModelProperty(value = "服务颜色") @ApiModelProperty(value = "服务颜色")
private String color; private String color;
/**
* 图标
*/
@ApiModelProperty(value = "图标")
private String icon;
} }

@ -29,6 +29,7 @@
<result column="value" property="value"/> <result column="value" property="value"/>
<result column="key" property="key"/> <result column="key" property="key"/>
<result column="has_children" property="hasChildren"/> <result column="has_children" property="hasChildren"/>
<result column="ip" property="ip"/>
</resultMap> </resultMap>
<select id="tree" resultMap="treeNodeResultMap" > <select id="tree" resultMap="treeNodeResultMap" >
@ -40,6 +41,7 @@
a.id AS "key", a.id AS "key",
a.monitor_type, a.monitor_type,
a.status, a.status,
a.ip,
( (
SELECT SELECT
CASE WHEN count(1) > 0 THEN 1 ELSE 0 END CASE WHEN count(1) > 0 THEN 1 ELSE 0 END

@ -40,4 +40,9 @@ public interface IConfigMonitorService extends IService<ConfigMonitor> {
* @return * @return
*/ */
List<ConfigMonitorVO> tree(); List<ConfigMonitorVO> tree();
List<ConfigMonitor> getServiceList();
List<ConfigMonitor> getMiddleList();
List<ConfigMonitor> getServerParamsList();
} }

@ -220,6 +220,30 @@ public class ConfigMonitorServiceImpl extends ServiceImpl<ConfigMonitorMapper, C
return ForestNodeMerger.merge(baseMapper.tree()); return ForestNodeMerger.merge(baseMapper.tree());
} }
@Override
public List<ConfigMonitor> getServiceList() {
LambdaQueryWrapper<ConfigMonitor> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ConfigMonitor::getType,MonitorConstant.SERVICE);
List<ConfigMonitor> list = baseMapper.selectList(wrapper);
return list;
}
@Override
public List<ConfigMonitor> getMiddleList() {
LambdaQueryWrapper<ConfigMonitor> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ConfigMonitor::getType,MonitorConstant.REDIS).or().eq(ConfigMonitor::getType,MonitorConstant.MYSQL);
List<ConfigMonitor> list = baseMapper.selectList(wrapper);
return list;
}
@Override
public List<ConfigMonitor> getServerParamsList() {
LambdaQueryWrapper<ConfigMonitor> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ConfigMonitor::getType,MonitorConstant.WEB);
List<ConfigMonitor> list = baseMapper.selectList(wrapper);
return list;
}
public List<Long> getParentIdList(List<Long> parentIdList,Long parentId){ public List<Long> getParentIdList(List<Long> parentIdList,Long parentId){
parentIdList.add(parentId); parentIdList.add(parentId);
if(parentId != 0){ if(parentId != 0){

Loading…
Cancel
Save