소스 검색

系统监控

tianyabing 2 년 전
부모
커밋
fc9a1bc6bf

+ 1 - 1
src/main/java/com/sky/ioc/config/RestTemplateConfig.java

@@ -26,7 +26,7 @@ public class RestTemplateConfig {
                 }
                 super.prepareConnection(connection, httpMethod);
             }
-        }))
+        })).defaultHeader("clientId", "99")
                 // 超时时间
                 .setConnectTimeout(Duration.of(5*60, ChronoUnit.SECONDS))
                 .setReadTimeout(Duration.of(5*60, ChronoUnit.SECONDS));

+ 27 - 0
src/main/java/com/sky/ioc/controller/monitor/MonitorController.java

@@ -0,0 +1,27 @@
+package com.sky.ioc.controller.monitor;
+
+import com.sky.ioc.service.monitor.MonitorService;
+import com.sky.ioc.tool.ReturnMsg;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+@Api(tags = "系统监控")
+@Slf4j
+@RestController
+@RequestMapping("/system_monitoring")
+public class MonitorController {
+
+    @Autowired
+    private MonitorService monitorService;
+
+    @ApiOperation("获取定时任务列表")
+    @GetMapping("/job_list")
+    public ReturnMsg getJobList(@RequestParam(required = false) String name, @RequestParam(required = false) String group,
+                                @RequestParam(required = false) String status,
+                                @RequestParam String page, @RequestParam String page_size) {
+        return monitorService.getJobList(name, group, status, page, page_size);
+    }
+}

+ 2 - 5
src/main/java/com/sky/ioc/controller/server/ServerController.java

@@ -6,10 +6,7 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 @Api(tags = "服务管理")
 @Slf4j
@@ -22,7 +19,7 @@ public class ServerController {
 
 
     @ApiOperation("编辑指标")
-    @PostMapping("/server_list")
+    @GetMapping("/server_list")
     public ReturnMsg getServerList() {
         return serverService.getServerList();
     }

+ 7 - 0
src/main/java/com/sky/ioc/service/monitor/MonitorService.java

@@ -0,0 +1,7 @@
+package com.sky.ioc.service.monitor;
+
+import com.sky.ioc.tool.ReturnMsg;
+
+public interface MonitorService {
+    ReturnMsg getJobList(String name, String group, String status, String page, String pageSize);
+}

+ 37 - 0
src/main/java/com/sky/ioc/service/monitor/impl/MonitorServiceImpl.java

@@ -0,0 +1,37 @@
+package com.sky.ioc.service.monitor.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.sky.ioc.config.RestTemplateConfig;
+import com.sky.ioc.service.monitor.MonitorService;
+import com.sky.ioc.tool.ReturnMsg;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+import org.springframework.web.client.RestTemplate;
+
+import java.util.HashMap;
+import java.util.Map;
+
+@Service
+public class MonitorServiceImpl implements MonitorService {
+
+    @Value("${sky.front-server-url}")
+    private String iocServerUrl;
+
+    @Autowired
+    private RestTemplateConfig restTemplateConfig;
+
+
+    @Override
+    public ReturnMsg getJobList(String name, String group, String status, String page, String pageSize) {
+        RestTemplate restTemplate = restTemplateConfig.build();
+        Map params = new HashMap<>();
+        params.put("name", name);
+        params.put("group", group);
+        params.put("status", status);
+        params.put("page", page);
+        params.put("page_size", pageSize);
+        JSONObject forObject = restTemplate.postForObject(iocServerUrl + "/quartz_job/getJobList", null, JSONObject.class, params);
+        return ReturnMsg.ok(forObject);
+    }
+}