This is an automated email from the ASF dual-hosted git repository.

jianglongtao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new d5872305e63 Fixed the error of null value in contextManager when 
collecting metric data (#18907)
d5872305e63 is described below

commit d5872305e634a9edc0d5696772e831d5316c4d30
Author: jiangML <[email protected]>
AuthorDate: Thu Jul 7 11:48:45 2022 +0800

    Fixed the error of null value in contextManager when collecting metric data 
(#18907)
    
    * Fixed the null value error of contextManager in ProxyContext when 
collecting monitoring data.
    
    * Update code format.
    
    * Format code.
    
    * Add null value judgment.
    
    * Optimize code.
---
 .../agent/metrics/prometheus/collector/MetaDataInfoCollector.java       | 2 +-
 .../agent/metrics/prometheus/collector/ProxyInfoCollector.java          | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git 
a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/MetaDataInfoCollector.java
 
b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/MetaDataInfoCollector.java
index 31df8d5ef36..eb673b4036c 100644
--- 
a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/MetaDataInfoCollector.java
+++ 
b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/MetaDataInfoCollector.java
@@ -56,7 +56,7 @@ public final class MetaDataInfoCollector extends Collector {
     public List<MetricFamilySamples> collect() {
         List<MetricFamilySamples> result = new LinkedList<>();
         Optional<GaugeMetricFamily> metaDataInfo = 
FACTORY.createGaugeMetricFamily(MetricIds.METADATA_INFO);
-        if (metaDataInfo.isPresent() && 
MetricsUtil.isClassExisted(PROXY_CONTEXT_CLASS)) {
+        if (null != ProxyContext.getInstance().getContextManager() && 
metaDataInfo.isPresent() && MetricsUtil.isClassExisted(PROXY_CONTEXT_CLASS)) {
             collectProxy(metaDataInfo.get());
             result.add(metaDataInfo.get());
         }
diff --git 
a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/ProxyInfoCollector.java
 
b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/ProxyInfoCollector.java
index f619a71556e..49555c56c8c 100644
--- 
a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/ProxyInfoCollector.java
+++ 
b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/ProxyInfoCollector.java
@@ -52,7 +52,7 @@ public final class ProxyInfoCollector extends Collector {
     
     @Override
     public List<MetricFamilySamples> collect() {
-        if (!MetricsUtil.isClassExisted(PROXY_CLASS)) {
+        if (!MetricsUtil.isClassExisted(PROXY_CLASS) || null == 
ProxyContext.getInstance().getContextManager()) {
             return Collections.emptyList();
         }
         Optional<GaugeMetricFamily> proxyInfo = 
FACTORY.createGaugeMetricFamily(MetricIds.PROXY_INFO);

Reply via email to