提交 e0671239 编写于 作者: Z zengqiao

修复因DB中Broker信息不存在导致TotalLogSize指标获取时抛空指针问题

上级 375c6f56
......@@ -751,8 +751,8 @@ public class ClusterMetricServiceImpl extends BaseMetricService implements Clust
private Result<ClusterMetrics> getMetricFromKafkaByTotalTopics(Long clusterId, String metric, String topicMetric){
List<Topic> topics = topicService.listTopicsFromCacheFirst(clusterId);
float metricsSum = 0f;
for(Topic topic : topics){
float sumMetricValue = 0f;
for(Topic topic : topics) {
Result<List<TopicMetrics>> ret = topicMetricService.collectTopicMetricsFromKafkaWithCacheFirst(
clusterId,
topic.getTopicName(),
......@@ -763,14 +763,15 @@ public class ClusterMetricServiceImpl extends BaseMetricService implements Clust
continue;
}
List<TopicMetrics> topicMetrics = ret.getData();
for (TopicMetrics metrics : topicMetrics) {
if(metrics.isBBrokerAgg()){
metricsSum += Double.valueOf(metrics.getMetrics().get(topicMetric));
for (TopicMetrics metrics : ret.getData()) {
if(metrics.isBBrokerAgg()) {
Float metricValue = metrics.getMetric(topicMetric);
sumMetricValue += (metricValue == null? 0f: metricValue);
break;
}
}
}
return Result.buildSuc(initWithMetrics(clusterId, metric, metricsSum));
return Result.buildSuc(initWithMetrics(clusterId, metric, sumMetricValue));
}
}
......@@ -191,6 +191,10 @@ public class KafkaJMXClient extends AbstractClusterLoadedChangedHandler {
lambdaQueryWrapper.eq(BrokerPO::getStatus, Constant.ALIVE);
BrokerPO brokerPO = brokerDAO.selectOne(lambdaQueryWrapper);
if (brokerPO == null) {
return null;
}
return Broker.buildFrom(brokerPO);
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册