Merge pull request #432 from didi/master

merge master to dev
This commit is contained in:
EricZeng
2022-01-13 11:40:17 +08:00
committed by GitHub
4 changed files with 18 additions and 3 deletions

View File

@@ -136,7 +136,8 @@ EXPIRED_TOPIC_CONFIG
配置Value 配置Value
```json ```json
{ {
"minExpiredDay": 30, #过期时间大于此值才显示 "minExpiredDay": 30, #过期时间大于此值才显示,
"filterRegex": ".*XXX\\s+", #忽略符合此正则规则的Topic
"ignoreClusterIdList": [ # 忽略的集群 "ignoreClusterIdList": [ # 忽略的集群
50 50
] ]

View File

@@ -10,6 +10,8 @@ import java.util.List;
public class TopicExpiredConfig { public class TopicExpiredConfig {
private Integer minExpiredDay = 30; private Integer minExpiredDay = 30;
private String filterRegex = "";
private List<Long> ignoreClusterIdList = new ArrayList<>(); private List<Long> ignoreClusterIdList = new ArrayList<>();
public Integer getMinExpiredDay() { public Integer getMinExpiredDay() {
@@ -28,10 +30,19 @@ public class TopicExpiredConfig {
this.ignoreClusterIdList = ignoreClusterIdList; this.ignoreClusterIdList = ignoreClusterIdList;
} }
public String getFilterRegex() {
return filterRegex;
}
public void setFilterRegex(String filterRegex) {
this.filterRegex = filterRegex;
}
@Override @Override
public String toString() { public String toString() {
return "TopicExpiredConfig{" + return "TopicExpiredConfig{" +
"minExpiredDay=" + minExpiredDay + "minExpiredDay=" + minExpiredDay +
", filterRegex='" + filterRegex + '\'' +
", ignoreClusterIdList=" + ignoreClusterIdList + ", ignoreClusterIdList=" + ignoreClusterIdList +
'}'; '}';
} }

View File

@@ -7,7 +7,7 @@ import { urlPrefix } from 'constants/left-menu';
import { region, IRegionIdcs } from 'store/region'; import { region, IRegionIdcs } from 'store/region';
import logoUrl from '../../assets/image/kafka-logo.png'; import logoUrl from '../../assets/image/kafka-logo.png';
import userIcon from '../../assets/image/normal.png'; import userIcon from '../../assets/image/normal.png';
import weChat from '../../assets/image/wechat.png'; import weChat from '../../assets/image/weChat.png';
import { users } from 'store/users'; import { users } from 'store/users';
import { observer } from 'mobx-react'; import { observer } from 'mobx-react';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';

View File

@@ -22,6 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.*; import java.util.*;
import java.util.regex.Pattern;
/** /**
* @author zengqiao * @author zengqiao
@@ -240,9 +241,11 @@ public class ExpertServiceImpl implements ExpertService {
return new ArrayList<>(); return new ArrayList<>();
} }
//获取满足条件的过期Topic
List<TopicExpiredDO> filteredExpiredTopicList = new ArrayList<>(); List<TopicExpiredDO> filteredExpiredTopicList = new ArrayList<>();
for (TopicExpiredDO elem: expiredTopicList) { for (TopicExpiredDO elem: expiredTopicList) {
if (config.getIgnoreClusterIdList().contains(elem.getClusterId())) { //判定是否为忽略Cluster或者判定是否为忽略Topic名使用正则来过滤理论上不属于过期的Topic
if (config.getIgnoreClusterIdList().contains(elem.getClusterId()) || Pattern.matches(config.getFilterRegex(), elem.getTopicName())) {
continue; continue;
} }
filteredExpiredTopicList.add(elem); filteredExpiredTopicList.add(elem);