mirror of
https://github.com/didi/KnowStreaming.git
synced 2025-12-24 11:52:08 +08:00
[Feature] 集群Group列表按照Group维度进行展示 (#580)
This commit is contained in:
@@ -1,12 +1,15 @@
|
||||
package com.xiaojukeji.know.streaming.km.rest.api.v3.cluster;
|
||||
|
||||
import com.xiaojukeji.know.streaming.km.biz.group.GroupManager;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.dto.cluster.ClusterGroupSummaryDTO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.dto.cluster.ClusterGroupsOverviewDTO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.dto.metrices.MetricGroupPartitionDTO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.dto.pagination.PaginationBaseDTO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.dto.pagination.field.PaginationFuzzySearchFieldDTO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.entity.result.PaginationResult;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.entity.result.Result;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.entity.topic.TopicPartitionKS;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.vo.group.GroupOverviewVO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.vo.metrics.line.MetricMultiLinesVO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.vo.group.GroupTopicOverviewVO;
|
||||
import com.xiaojukeji.know.streaming.km.common.constant.ApiPrefix;
|
||||
@@ -37,7 +40,8 @@ public class ClusterGroupsController {
|
||||
@Autowired
|
||||
private GroupMetricService groupMetricService;
|
||||
|
||||
@ApiOperation(value = "集群Groups信息列表")
|
||||
@Deprecated
|
||||
@ApiOperation(value = "集群Groups信息列表", notes = "废弃, 下一个版本删除")
|
||||
@PostMapping(value = "clusters/{clusterPhyId}/groups-overview")
|
||||
@ResponseBody
|
||||
public PaginationResult<GroupTopicOverviewVO> getClusterPhyGroupsOverview(@PathVariable Long clusterPhyId,
|
||||
@@ -53,6 +57,13 @@ public class ClusterGroupsController {
|
||||
);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "集群Groups信息列表")
|
||||
@GetMapping(value = "clusters/{clusterPhyId}/groups-overview")
|
||||
@ResponseBody
|
||||
public PaginationResult<GroupOverviewVO> getGroupsOverview(@PathVariable Long clusterPhyId, ClusterGroupSummaryDTO dto) {
|
||||
return groupManager.pagingClusterGroupsOverview(clusterPhyId, dto);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "集群Groups指标信息")
|
||||
@PostMapping(value = "clusters/{clusterPhyId}/group-metrics")
|
||||
@ResponseBody
|
||||
@@ -70,8 +81,17 @@ public class ClusterGroupsController {
|
||||
return groupManager.listClusterPhyGroupPartitions(clusterPhyId, groupName, startTime, endTime);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "Group的Topic列表")
|
||||
@GetMapping(value = "clusters/{clusterPhyId}/groups/{groupName}/topics-overview")
|
||||
public PaginationResult<GroupTopicOverviewVO> getGroupTopicsOverview(@PathVariable Long clusterPhyId,
|
||||
@PathVariable String groupName,
|
||||
PaginationBaseDTO dto) {
|
||||
return groupManager.pagingGroupTopicMembers(clusterPhyId, groupName, dto);
|
||||
}
|
||||
|
||||
/**************************************************** private method ****************************************************/
|
||||
|
||||
@Deprecated
|
||||
private Tuple<String, String> getSearchKeyWords(ClusterGroupsOverviewDTO dto) {
|
||||
if (ValidateUtils.isEmptyList(dto.getFuzzySearchDTOList())) {
|
||||
return new Tuple<>("", "");
|
||||
|
||||
@@ -55,7 +55,7 @@ public class GroupController {
|
||||
public Result<GroupMetadataCombineExistVO> getGroupMetadataCombineExist(@PathVariable Long clusterPhyId,
|
||||
@PathVariable String groupName,
|
||||
@PathVariable String topicName) {
|
||||
GroupMemberPO po = groupService.getGroupFromDB(clusterPhyId, groupName, topicName);
|
||||
GroupMemberPO po = groupService.getGroupTopicFromDB(clusterPhyId, groupName, topicName);
|
||||
if (po == null) {
|
||||
return Result.buildSuc(new GroupMetadataCombineExistVO(clusterPhyId, groupName, topicName, false));
|
||||
}
|
||||
|
||||
@@ -3,7 +3,6 @@ package com.xiaojukeji.know.streaming.km.rest.api.v3.topic;
|
||||
import com.xiaojukeji.know.streaming.km.biz.topic.TopicStateManager;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.dto.metrices.MetricDTO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.dto.pagination.PaginationBaseDTO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.dto.pagination.PaginationSortDTO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.dto.topic.TopicRecordDTO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.entity.metrics.BaseMetrics;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.entity.result.PaginationResult;
|
||||
@@ -11,6 +10,7 @@ import com.xiaojukeji.know.streaming.km.common.bean.entity.result.Result;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.po.KafkaAclPO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.vo.acl.AclBindingVO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.vo.group.GroupTopicBasicVO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.vo.group.GroupTopicOverviewVO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.vo.metrics.point.MetricPointVO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.vo.topic.TopicBrokersPartitionsSummaryVO;
|
||||
import com.xiaojukeji.know.streaming.km.common.bean.vo.topic.TopicStateVO;
|
||||
@@ -136,8 +136,17 @@ public class TopicStateController {
|
||||
@ApiOperation(value = "TopicGroups基本信息列表")
|
||||
@GetMapping(value = "clusters/{clusterPhyId}/topics/{topicName}/groups-basic")
|
||||
@ResponseBody
|
||||
public Result<List<GroupTopicBasicVO>> getTopicGroupsBasic(@PathVariable Long clusterPhyId,
|
||||
@PathVariable String topicName) {
|
||||
public Result<List<GroupTopicBasicVO>> getTopicGroupsBasic(@PathVariable Long clusterPhyId, @PathVariable String topicName) {
|
||||
return Result.buildSuc(ConvertUtil.list2List(groupService.listGroupByTopic(clusterPhyId, topicName), GroupTopicBasicVO.class));
|
||||
}
|
||||
|
||||
@ApiOperation("Topic的Group列表")
|
||||
@GetMapping(value = "clusters/{clusterPhyId}/topics/{topicName}/groups-overview")
|
||||
public PaginationResult<GroupTopicOverviewVO> getTopicGroupsOverview(@PathVariable Long clusterPhyId,
|
||||
@PathVariable String topicName,
|
||||
@RequestParam(required = false) String searchGroupName,
|
||||
PaginationBaseDTO dto) {
|
||||
return topicStateManager.pagingTopicGroupsOverview(clusterPhyId, topicName, searchGroupName, dto);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user