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

panjuan 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 495289ca8e9 Refactor BuildInfoExporter (#23660)
495289ca8e9 is described below

commit 495289ca8e9899e94b737c7a74bf2f3289ae18ff
Author: Liang Zhang <[email protected]>
AuthorDate: Thu Jan 19 22:28:05 2023 +0800

    Refactor BuildInfoExporter (#23660)
---
 .../shardingsphere/agent/core/log/LoggerFactory.java |  5 ++---
 ...BuildInfoExporter.java => BuildInfoExporter.java} | 20 ++++++--------------
 .../impl/proxy/ProxyMetaDataInfoExporter.java        |  2 +-
 ...oExporterTest.java => BuildInfoExporterTest.java} |  8 ++++----
 .../prometheus/PrometheusPluginLifecycleService.java |  4 ++--
 .../shardingsphere-proxy/observability/_index.cn.md  |  2 +-
 .../shardingsphere-proxy/observability/_index.en.md  |  2 +-
 7 files changed, 17 insertions(+), 26 deletions(-)

diff --git 
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/log/LoggerFactory.java
 
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/log/LoggerFactory.java
index 76ad6868b09..eab485002e9 100644
--- 
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/log/LoggerFactory.java
+++ 
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/log/LoggerFactory.java
@@ -39,7 +39,7 @@ import java.util.LinkedList;
 import java.util.jar.JarFile;
 
 /**
- * Logger factory.
+ * Agent logger factory.
  */
 public final class LoggerFactory {
     
@@ -55,8 +55,7 @@ public final class LoggerFactory {
     public static Logger getLogger(final Class<?> clazz) {
         Class<?> factoryClazz = 
getClassLoader().loadClass("org.slf4j.LoggerFactory");
         Method method = factoryClazz.getMethod("getLogger", Class.class);
-        Object log = method.invoke(null, clazz);
-        return new Logger(log);
+        return new Logger(method.invoke(null, clazz));
     }
     
     @SneakyThrows({URISyntaxException.class, IOException.class})
diff --git 
a/agent/plugins/metrics/core/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/JDKBuildInfoExporter.java
 
b/agent/plugins/metrics/core/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/BuildInfoExporter.java
similarity index 72%
rename from 
agent/plugins/metrics/core/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/JDKBuildInfoExporter.java
rename to 
agent/plugins/metrics/core/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/BuildInfoExporter.java
index 28e28fe3286..7cb49eb9ae0 100644
--- 
a/agent/plugins/metrics/core/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/JDKBuildInfoExporter.java
+++ 
b/agent/plugins/metrics/core/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/BuildInfoExporter.java
@@ -17,42 +17,34 @@
 
 package org.apache.shardingsphere.agent.plugin.metrics.core.exporter.impl;
 
-import lombok.RequiredArgsConstructor;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.collector.MetricsCollectorRegistry;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.collector.type.GaugeMetricFamilyMetricsCollector;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.config.MetricCollectorType;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.config.MetricConfiguration;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.exporter.MetricsExporter;
-import org.apache.shardingsphere.proxy.Bootstrap;
 
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.Optional;
 
 /**
- * JDK build information collector.
+ * Build information exporter.
  */
-@RequiredArgsConstructor
-public final class JDKBuildInfoExporter implements MetricsExporter {
+public final class BuildInfoExporter implements MetricsExporter {
     
-    private final MetricConfiguration config = new 
MetricConfiguration("jdk_build_info",
-            MetricCollectorType.GAUGE_METRIC_FAMILY, "JDK build information", 
Arrays.asList("version", "name"), Collections.emptyMap());
+    private final MetricConfiguration config = new 
MetricConfiguration("build_info",
+            MetricCollectorType.GAUGE_METRIC_FAMILY, "Build information", 
Arrays.asList("name", "version"), Collections.emptyMap());
     
     @Override
     public Optional<GaugeMetricFamilyMetricsCollector> export(final String 
pluginType) {
         GaugeMetricFamilyMetricsCollector result = 
MetricsCollectorRegistry.get(config, pluginType);
         addJDKBuildInfo(result, getClass().getPackage());
-        try {
-            Class.forName(Bootstrap.class.getCanonicalName());
-            addJDKBuildInfo(result, Bootstrap.class.getPackage());
-        } catch (final ClassNotFoundException ignored) {
-        }
         return Optional.of(result);
     }
     
     private void addJDKBuildInfo(final GaugeMetricFamilyMetricsCollector 
collector, final Package pkg) {
+        String name = "ShardingSphere";
         String version = null == pkg.getImplementationVersion() ? "unknown" : 
pkg.getImplementationVersion();
-        String name = null == pkg.getImplementationTitle() ? "unknown" : 
pkg.getImplementationTitle();
-        collector.addMetric(Arrays.asList(version, name), 1d);
+        collector.addMetric(Arrays.asList(name, version), 1d);
     }
 }
diff --git 
a/agent/plugins/metrics/core/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyMetaDataInfoExporter.java
 
b/agent/plugins/metrics/core/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyMetaDataInfoExporter.java
index 2f83fcba0f2..a44a7794cb2 100644
--- 
a/agent/plugins/metrics/core/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyMetaDataInfoExporter.java
+++ 
b/agent/plugins/metrics/core/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyMetaDataInfoExporter.java
@@ -37,7 +37,7 @@ import java.util.HashSet;
 import java.util.Optional;
 
 /**
- * Proxy meta data information collector.
+ * Proxy meta data information exporter.
  */
 @Slf4j
 public final class ProxyMetaDataInfoExporter implements MetricsExporter {
diff --git 
a/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/JDKBuildInfoExporterTest.java
 
b/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/BuildInfoExporterTest.java
similarity index 87%
rename from 
agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/JDKBuildInfoExporterTest.java
rename to 
agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/BuildInfoExporterTest.java
index 205371dd7c2..ce16aa396c0 100644
--- 
a/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/JDKBuildInfoExporterTest.java
+++ 
b/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/BuildInfoExporterTest.java
@@ -33,18 +33,18 @@ import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.junit.Assert.assertTrue;
 
-public final class JDKBuildInfoExporterTest {
+public final class BuildInfoExporterTest {
     
     @After
     public void reset() {
-        MetricConfiguration config = new MetricConfiguration("jdk_build_info", 
MetricCollectorType.GAUGE_METRIC_FAMILY, null, Arrays.asList("version", 
"name"), Collections.emptyMap());
+        MetricConfiguration config = new MetricConfiguration("build_info", 
MetricCollectorType.GAUGE_METRIC_FAMILY, null, Arrays.asList("name", 
"version"), Collections.emptyMap());
         ((MetricsCollectorFixture) MetricsCollectorRegistry.get(config, 
"FIXTURE")).reset();
     }
     
     @Test
     public void assertExport() {
-        Optional<GaugeMetricFamilyMetricsCollector> collector = new 
JDKBuildInfoExporter().export("FIXTURE");
+        Optional<GaugeMetricFamilyMetricsCollector> collector = new 
BuildInfoExporter().export("FIXTURE");
         assertTrue(collector.isPresent());
-        assertThat(((MetricsCollectorFixture) collector.get()).getValue(), 
is(2d));
+        assertThat(((MetricsCollectorFixture) collector.get()).getValue(), 
is(1d));
     }
 }
diff --git 
a/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/PrometheusPluginLifecycleService.java
 
b/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/PrometheusPluginLifecycleService.java
index 180194ef27b..21a90111e74 100644
--- 
a/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/PrometheusPluginLifecycleService.java
+++ 
b/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/PrometheusPluginLifecycleService.java
@@ -24,7 +24,7 @@ import io.prometheus.client.hotspot.DefaultExports;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shardingsphere.agent.api.PluginConfiguration;
 import 
org.apache.shardingsphere.agent.plugin.core.config.validator.PluginConfigurationValidator;
-import 
org.apache.shardingsphere.agent.plugin.metrics.core.exporter.impl.JDKBuildInfoExporter;
+import 
org.apache.shardingsphere.agent.plugin.metrics.core.exporter.impl.BuildInfoExporter;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.exporter.impl.proxy.ProxyMetaDataInfoExporter;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.exporter.impl.proxy.ProxyStateExporter;
 import 
org.apache.shardingsphere.agent.plugin.metrics.prometheus.exoprter.PrometheusMetricsExporter;
@@ -61,7 +61,7 @@ public final class PrometheusPluginLifecycleService 
implements PluginLifecycleSe
     }
     
     private void registerCollector(final boolean isCollectJVMInformation, 
final boolean isEnhancedForProxy) {
-        new PrometheusMetricsExporter(new JDKBuildInfoExporter()).register();
+        new PrometheusMetricsExporter(new BuildInfoExporter()).register();
         if (isEnhancedForProxy) {
             new PrometheusMetricsExporter(new ProxyStateExporter()).register();
             new PrometheusMetricsExporter(new 
ProxyMetaDataInfoExporter()).register();
diff --git 
a/docs/document/content/user-manual/shardingsphere-proxy/observability/_index.cn.md
 
b/docs/document/content/user-manual/shardingsphere-proxy/observability/_index.cn.md
index 8b2cc43556b..bd3c659197d 100644
--- 
a/docs/document/content/user-manual/shardingsphere-proxy/observability/_index.cn.md
+++ 
b/docs/document/content/user-manual/shardingsphere-proxy/observability/_index.cn.md
@@ -156,7 +156,7 @@ services:
 
 | 指标名称                            | 指标类型             | 指标描述                    
                                                            |
 | :-------------------------------- | :------------------ | 
:------------------------------------------------------------------------------------
 |
-| jdk_build_info                    | GAUGE_METRIC_FAMILY | 构建信息               
                                                                 |
+| build_info                        | GAUGE_METRIC_FAMILY | 构建信息               
                                                                 |
 | parsed_sql_total                  | COUNTER             | 
按类型(INSERT、UPDATE、DELETE、SELECT、DDL、DCL、DAL、TCL、RQL、RDL、RAL、RUL)分类的解析总数 |
 | routed_sql_total                  | COUNTER             | 
按类型(INSERT、UPDATE、DELETE、SELECT)分类的路由总数                                      |
 | routed_data_sources_total         | COUNTER             | 数据源路由总数            
                                                               |
diff --git 
a/docs/document/content/user-manual/shardingsphere-proxy/observability/_index.en.md
 
b/docs/document/content/user-manual/shardingsphere-proxy/observability/_index.en.md
index ad4a0143e2b..b44cef31be4 100644
--- 
a/docs/document/content/user-manual/shardingsphere-proxy/observability/_index.en.md
+++ 
b/docs/document/content/user-manual/shardingsphere-proxy/observability/_index.en.md
@@ -159,7 +159,7 @@ services:
 
 | Name                              | Type                | Description        
                                                                                
                                    |
 | :-------------------------------- | :------------------ | 
:-------------------------------------------------------------------------------------------------------------------------------------
 |
-| jdk_build_info                    | GAUGE_METRIC_FAMILY | Build information  
                                                                                
                                    |
+| build_info                        | GAUGE_METRIC_FAMILY | Build information  
                                                                                
                                    |
 | parsed_sql_total                  | COUNTER             | Total count of 
parsed by type (INSERT, UPDATE, DELETE, SELECT, DDL, DCL, DAL, TCL, RQL, RDL, 
RAL, RUL)                                 |
 | routed_sql_total                  | COUNTER             | Total count of 
routed by type (INSERT, UPDATE, DELETE, SELECT)                                 
                                        |
 | routed_data_sources_total         | COUNTER             | Total count of 
data source routed                                                              
                                        |

Reply via email to