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

sunnianjun 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 b159cfead3f Move agent config files into META-INF/conf folders (#23252)
b159cfead3f is described below

commit b159cfead3f39b5e591bfc16232dbbdb8cd8986f
Author: Liang Zhang <[email protected]>
AuthorDate: Mon Jan 2 02:28:49 2023 +0800

    Move agent config files into META-INF/conf folders (#23252)
    
    * Move agent config files into META-INF/conf folders
    
    * Fix checkstyle
    
    * Fix test
---
 .../plugin/loader/AdvisorConfigurationLoader.java  | 24 ++++++----
 .../YamlAdvisorsConfigurationLoaderTest.java       |  4 +-
 .../YamlAdvisorsConfigurationSwapperTest.java      |  2 +-
 .../resources/{ => META-INF}/conf/advisors.yaml    |  0
 .../{ => META-INF}/conf/empty-advisors.yaml        |  0
 .../conf/baselogging-advisors.yaml}                |  0
 .../core/src/test/resources/conf/agent.yaml        | 53 ----------------------
 .../wrapper/PrometheusWrapperFactory.java          |  2 +-
 .../conf/prometheus-jdbc-advisors.yaml}            |  0
 .../conf/prometheus-metrics.yaml}                  |  0
 .../conf/prometheus-proxy-advisors.yaml}           |  0
 .../conf/prometheus-metrics.yaml}                  |  0
 .../conf/jaeger-jdbc-advisors.yaml}                |  0
 .../conf/jaeger-proxy-advisors.yaml}               |  0
 .../conf/opentelemetry-jdbc-advisors.yaml}         |  0
 .../conf/opentelemetry-proxy-advisors.yaml}        |  0
 .../conf/opentracing-jdbc-advisors.yaml}           |  0
 .../conf/opentracing-proxy-advisors.yaml}          |  0
 .../conf/zipkin-jdbc-advisors.yaml}                |  0
 .../conf/zipkin-proxy-advisors.yaml}               |  0
 .../observability/_index.cn.md                     |  2 +-
 .../observability/_index.en.md                     |  2 +-
 22 files changed, 22 insertions(+), 67 deletions(-)

diff --git 
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/loader/AdvisorConfigurationLoader.java
 
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/loader/AdvisorConfigurationLoader.java
index e47264f341f..b1940ef9fb7 100644
--- 
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/loader/AdvisorConfigurationLoader.java
+++ 
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/loader/AdvisorConfigurationLoader.java
@@ -52,26 +52,34 @@ public final class AdvisorConfigurationLoader {
         Map<String, AdvisorConfiguration> result = new HashMap<>();
         AgentClassLoader agentClassLoader = new 
AgentClassLoader(AdvisorConfigurationLoader.class.getClassLoader(), pluginJars);
         for (String each : pluginTypes) {
-            InputStream advisorsResourceStream = 
getAdvisorsResourceStream(agentClassLoader, each, isEnhancedForProxy);
+            InputStream advisorsResourceStream = 
getResourceStream(agentClassLoader, each, isEnhancedForProxy);
             if (null == advisorsResourceStream) {
                 LOGGER.info("No configuration of advisor for type `{}`.", 
each);
             } else {
-                mergeAdvisorConfigurations(result, 
YamlAdvisorsConfigurationSwapper.swapToObject(YamlAdvisorsConfigurationLoader.load(advisorsResourceStream),
 each));
+                mergeConfigurations(result, 
YamlAdvisorsConfigurationSwapper.swapToObject(YamlAdvisorsConfigurationLoader.load(advisorsResourceStream),
 each));
             }
         }
         return result;
     }
     
-    private static InputStream getAdvisorsResourceStream(final ClassLoader 
agentClassLoader, final String pluginType, final boolean isEnhancedForProxy) {
-        InputStream accurateResourceStream = 
getAdvisorsResourceStream(agentClassLoader, pluginType, (isEnhancedForProxy ? 
"proxy" : "jdbc") + "-advisors.yaml");
-        return null == accurateResourceStream ? 
getAdvisorsResourceStream(agentClassLoader, pluginType, "advisors.yaml") : 
accurateResourceStream;
+    private static InputStream getResourceStream(final ClassLoader 
agentClassLoader, final String pluginType, final boolean isEnhancedForProxy) {
+        InputStream accurateResourceStream = 
getResourceStream(agentClassLoader, getFileName(pluginType, 
isEnhancedForProxy));
+        return null == accurateResourceStream ? 
getResourceStream(agentClassLoader, getFileName(pluginType)) : 
accurateResourceStream;
     }
     
-    private static InputStream getAdvisorsResourceStream(final ClassLoader 
agentClassLoader, final String pluginType, final String fileName) {
-        return agentClassLoader.getResourceAsStream(String.join("/", 
pluginType.toLowerCase(), fileName));
+    private static InputStream getResourceStream(final ClassLoader 
agentClassLoader, final String fileName) {
+        return agentClassLoader.getResourceAsStream(String.join("/", 
"META-INF", "conf", fileName));
     }
     
-    private static void mergeAdvisorConfigurations(final Map<String, 
AdvisorConfiguration> advisorConfigMap, final Collection<AdvisorConfiguration> 
advisorConfigs) {
+    private static String getFileName(final String pluginType, final boolean 
isEnhancedForProxy) {
+        return String.join("-", pluginType.toLowerCase(), isEnhancedForProxy ? 
"proxy" : "jdbc", "advisors.yaml");
+    }
+    
+    private static String getFileName(final String pluginType) {
+        return String.join("-", pluginType.toLowerCase(), "advisors.yaml");
+    }
+    
+    private static void mergeConfigurations(final Map<String, 
AdvisorConfiguration> advisorConfigMap, final Collection<AdvisorConfiguration> 
advisorConfigs) {
         for (AdvisorConfiguration each : advisorConfigs) {
             advisorConfigMap.computeIfAbsent(each.getTargetClassName(), key -> 
new 
AdvisorConfiguration(each.getTargetClassName())).getAdvisors().addAll(each.getAdvisors());
         }
diff --git 
a/agent/core/src/test/java/org/apache/shardingsphere/agent/core/plugin/yaml/loader/YamlAdvisorsConfigurationLoaderTest.java
 
b/agent/core/src/test/java/org/apache/shardingsphere/agent/core/plugin/yaml/loader/YamlAdvisorsConfigurationLoaderTest.java
index ce274bf7431..bd3b68a5b6d 100644
--- 
a/agent/core/src/test/java/org/apache/shardingsphere/agent/core/plugin/yaml/loader/YamlAdvisorsConfigurationLoaderTest.java
+++ 
b/agent/core/src/test/java/org/apache/shardingsphere/agent/core/plugin/yaml/loader/YamlAdvisorsConfigurationLoaderTest.java
@@ -36,7 +36,7 @@ public final class YamlAdvisorsConfigurationLoaderTest {
     
     @Test
     public void assertLoad() {
-        YamlAdvisorsConfiguration actual = 
YamlAdvisorsConfigurationLoader.load(getClass().getResourceAsStream("/conf/advisors.yaml"));
+        YamlAdvisorsConfiguration actual = 
YamlAdvisorsConfigurationLoader.load(getClass().getResourceAsStream("/META-INF/conf/advisors.yaml"));
         assertThat(actual.getAdvisors().size(), is(1));
         assertYamlAdvisorConfiguration(actual.getAdvisors().iterator().next());
     }
@@ -84,7 +84,7 @@ public final class YamlAdvisorsConfigurationLoaderTest {
     
     @Test
     public void assertLoadEmptyFile() {
-        YamlAdvisorsConfiguration actual = 
YamlAdvisorsConfigurationLoader.load(getClass().getResourceAsStream("/conf/empty-advisors.yaml"));
+        YamlAdvisorsConfiguration actual = 
YamlAdvisorsConfigurationLoader.load(getClass().getResourceAsStream("/META-INF/conf/empty-advisors.yaml"));
         assertTrue(actual.getAdvisors().isEmpty());
     }
 }
diff --git 
a/agent/core/src/test/java/org/apache/shardingsphere/agent/core/plugin/yaml/swapper/YamlAdvisorsConfigurationSwapperTest.java
 
b/agent/core/src/test/java/org/apache/shardingsphere/agent/core/plugin/yaml/swapper/YamlAdvisorsConfigurationSwapperTest.java
index 001151cd3a8..fb34ebcb0c9 100644
--- 
a/agent/core/src/test/java/org/apache/shardingsphere/agent/core/plugin/yaml/swapper/YamlAdvisorsConfigurationSwapperTest.java
+++ 
b/agent/core/src/test/java/org/apache/shardingsphere/agent/core/plugin/yaml/swapper/YamlAdvisorsConfigurationSwapperTest.java
@@ -38,7 +38,7 @@ public final class YamlAdvisorsConfigurationSwapperTest {
     @Test
     public void assertSwapToObject() {
         Collection<AdvisorConfiguration> actual = 
YamlAdvisorsConfigurationSwapper.swapToObject(
-                new 
Yaml().loadAs(getClass().getResourceAsStream("/conf/advisors.yaml"), 
YamlAdvisorsConfiguration.class), "YAML_FIXTURE");
+                new 
Yaml().loadAs(getClass().getResourceAsStream("/META-INF/conf/advisors.yaml"), 
YamlAdvisorsConfiguration.class), "YAML_FIXTURE");
         assertThat(actual.size(), is(1));
         assertAdvisorConfiguration(actual.iterator().next());
     }
diff --git a/agent/core/src/test/resources/conf/advisors.yaml 
b/agent/core/src/test/resources/META-INF/conf/advisors.yaml
similarity index 100%
rename from agent/core/src/test/resources/conf/advisors.yaml
rename to agent/core/src/test/resources/META-INF/conf/advisors.yaml
diff --git a/agent/core/src/test/resources/conf/empty-advisors.yaml 
b/agent/core/src/test/resources/META-INF/conf/empty-advisors.yaml
similarity index 100%
rename from agent/core/src/test/resources/conf/empty-advisors.yaml
rename to agent/core/src/test/resources/META-INF/conf/empty-advisors.yaml
diff --git 
a/agent/plugins/logging/type/base/src/main/resources/baselogging/advisors.yaml 
b/agent/plugins/logging/type/base/src/main/resources/META-INF/conf/baselogging-advisors.yaml
similarity index 100%
rename from 
agent/plugins/logging/type/base/src/main/resources/baselogging/advisors.yaml
rename to 
agent/plugins/logging/type/base/src/main/resources/META-INF/conf/baselogging-advisors.yaml
diff --git a/agent/plugins/metrics/core/src/test/resources/conf/agent.yaml 
b/agent/plugins/metrics/core/src/test/resources/conf/agent.yaml
deleted file mode 100644
index 0ed75454ea4..00000000000
--- a/agent/plugins/metrics/core/src/test/resources/conf/agent.yaml
+++ /dev/null
@@ -1,53 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-plugins:
-  logging:
-    BaseLogging:
-      props:
-        level: "INFO"
-  metrics:
-    Prometheus:
-      host:  "localhost"
-      port: 9090
-      props:
-        jvm-information-collector-enabled: "true"
-  tracing:
-#    Jaeger:
-#      host: "localhost"
-#      port: 5775
-#      props:
-#        service-name: "shardingsphere"
-#        jaeger-sampler-type: "const"
-#        jaeger-sampler-param: "1"
-#        jaeger-reporter-log-spans: "true"
-#        jaeger-reporter-flush-interval: "1"
-    Zipkin:
-      host: "localhost"
-      port: 9411
-      props:
-        service-name: "shardingsphere"
-        url-version: "/api/v2/spans"
-        sampler-type: "const"
-        sampler-param: "1"
-#    OpenTracing:
-#      props:
-#        opentracing-tracer-class-name: 
"org.apache.skywalking.apm.toolkit.opentracing.SkywalkingTracer"
-    OpenTelemetry:
-      props:
-        otel-resource-attributes: "service.name=shardingsphere"
-        otel-traces-exporter: "zipkin"
diff --git 
a/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/wrapper/PrometheusWrapperFactory.java
 
b/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/wrapper/PrometheusWrapperFactory.java
index 1a565a87741..fbaac60a2ed 100644
--- 
a/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/wrapper/PrometheusWrapperFactory.java
+++ 
b/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/wrapper/PrometheusWrapperFactory.java
@@ -49,7 +49,7 @@ public final class PrometheusWrapperFactory implements 
MetricsWrapperFactory {
     
     @SuppressWarnings("unchecked")
     private static void parseMetricsYAML() {
-        InputStream inputStream = 
PrometheusWrapperFactory.class.getResourceAsStream("/prometheus/metrics.yaml");
+        InputStream inputStream = 
PrometheusWrapperFactory.class.getResourceAsStream("/META-INF/conf/prometheus-metrics.yaml");
         Map<String, List<Map<String, Object>>> metricsMap = new 
Yaml().loadAs(inputStream, LinkedHashMap.class);
         metrics = metricsMap.get("metrics");
     }
diff --git 
a/agent/plugins/metrics/type/prometheus/src/main/resources/prometheus/jdbc-advisors.yaml
 
b/agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/conf/prometheus-jdbc-advisors.yaml
similarity index 100%
rename from 
agent/plugins/metrics/type/prometheus/src/main/resources/prometheus/jdbc-advisors.yaml
rename to 
agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/conf/prometheus-jdbc-advisors.yaml
diff --git 
a/agent/plugins/metrics/type/prometheus/src/main/resources/prometheus/metrics.yaml
 
b/agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/conf/prometheus-metrics.yaml
similarity index 100%
rename from 
agent/plugins/metrics/type/prometheus/src/main/resources/prometheus/metrics.yaml
rename to 
agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/conf/prometheus-metrics.yaml
diff --git 
a/agent/plugins/metrics/type/prometheus/src/main/resources/prometheus/proxy-advisors.yaml
 
b/agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/conf/prometheus-proxy-advisors.yaml
similarity index 100%
rename from 
agent/plugins/metrics/type/prometheus/src/main/resources/prometheus/proxy-advisors.yaml
rename to 
agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/conf/prometheus-proxy-advisors.yaml
diff --git 
a/agent/plugins/metrics/type/prometheus/src/test/resources/prometheus/metrics.yaml
 
b/agent/plugins/metrics/type/prometheus/src/test/resources/META-INF/conf/prometheus-metrics.yaml
similarity index 100%
rename from 
agent/plugins/metrics/type/prometheus/src/test/resources/prometheus/metrics.yaml
rename to 
agent/plugins/metrics/type/prometheus/src/test/resources/META-INF/conf/prometheus-metrics.yaml
diff --git 
a/agent/plugins/tracing/type/jaeger/src/main/resources/jaeger/jdbc-advisors.yaml
 
b/agent/plugins/tracing/type/jaeger/src/main/resources/META-INF/conf/jaeger-jdbc-advisors.yaml
similarity index 100%
rename from 
agent/plugins/tracing/type/jaeger/src/main/resources/jaeger/jdbc-advisors.yaml
rename to 
agent/plugins/tracing/type/jaeger/src/main/resources/META-INF/conf/jaeger-jdbc-advisors.yaml
diff --git 
a/agent/plugins/tracing/type/jaeger/src/main/resources/jaeger/proxy-advisors.yaml
 
b/agent/plugins/tracing/type/jaeger/src/main/resources/META-INF/conf/jaeger-proxy-advisors.yaml
similarity index 100%
rename from 
agent/plugins/tracing/type/jaeger/src/main/resources/jaeger/proxy-advisors.yaml
rename to 
agent/plugins/tracing/type/jaeger/src/main/resources/META-INF/conf/jaeger-proxy-advisors.yaml
diff --git 
a/agent/plugins/tracing/type/opentelemetry/src/main/resources/opentelemetry/jdbc-advisors.yaml
 
b/agent/plugins/tracing/type/opentelemetry/src/main/resources/META-INF/conf/opentelemetry-jdbc-advisors.yaml
similarity index 100%
rename from 
agent/plugins/tracing/type/opentelemetry/src/main/resources/opentelemetry/jdbc-advisors.yaml
rename to 
agent/plugins/tracing/type/opentelemetry/src/main/resources/META-INF/conf/opentelemetry-jdbc-advisors.yaml
diff --git 
a/agent/plugins/tracing/type/opentelemetry/src/main/resources/opentelemetry/proxy-advisors.yaml
 
b/agent/plugins/tracing/type/opentelemetry/src/main/resources/META-INF/conf/opentelemetry-proxy-advisors.yaml
similarity index 100%
rename from 
agent/plugins/tracing/type/opentelemetry/src/main/resources/opentelemetry/proxy-advisors.yaml
rename to 
agent/plugins/tracing/type/opentelemetry/src/main/resources/META-INF/conf/opentelemetry-proxy-advisors.yaml
diff --git 
a/agent/plugins/tracing/type/opentracing/src/main/resources/opentracing/jdbc-advisors.yaml
 
b/agent/plugins/tracing/type/opentracing/src/main/resources/META-INF/conf/opentracing-jdbc-advisors.yaml
similarity index 100%
rename from 
agent/plugins/tracing/type/opentracing/src/main/resources/opentracing/jdbc-advisors.yaml
rename to 
agent/plugins/tracing/type/opentracing/src/main/resources/META-INF/conf/opentracing-jdbc-advisors.yaml
diff --git 
a/agent/plugins/tracing/type/opentracing/src/main/resources/opentracing/proxy-advisors.yaml
 
b/agent/plugins/tracing/type/opentracing/src/main/resources/META-INF/conf/opentracing-proxy-advisors.yaml
similarity index 100%
rename from 
agent/plugins/tracing/type/opentracing/src/main/resources/opentracing/proxy-advisors.yaml
rename to 
agent/plugins/tracing/type/opentracing/src/main/resources/META-INF/conf/opentracing-proxy-advisors.yaml
diff --git 
a/agent/plugins/tracing/type/zipkin/src/main/resources/zipkin/jdbc-advisors.yaml
 
b/agent/plugins/tracing/type/zipkin/src/main/resources/META-INF/conf/zipkin-jdbc-advisors.yaml
similarity index 100%
rename from 
agent/plugins/tracing/type/zipkin/src/main/resources/zipkin/jdbc-advisors.yaml
rename to 
agent/plugins/tracing/type/zipkin/src/main/resources/META-INF/conf/zipkin-jdbc-advisors.yaml
diff --git 
a/agent/plugins/tracing/type/zipkin/src/main/resources/zipkin/proxy-advisors.yaml
 
b/agent/plugins/tracing/type/zipkin/src/main/resources/META-INF/conf/zipkin-proxy-advisors.yaml
similarity index 100%
rename from 
agent/plugins/tracing/type/zipkin/src/main/resources/zipkin/proxy-advisors.yaml
rename to 
agent/plugins/tracing/type/zipkin/src/main/resources/META-INF/conf/zipkin-proxy-advisors.yaml
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 0ec67dcdc4e..0bfd6429228 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
@@ -39,7 +39,7 @@ tree
 ```
 * 配置说明
 
-`conf/agent.yaml` 用于管理 agent 配置。
+`META-INF/conf/agent.yaml` 用于管理 agent 配置。
 内置插件包括 Jaeger、OpenTracing、Zipkin、OpenTelemetry、BaseLogging 及 Prometheus。
 默认不开启任何插件。
 
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 d5db6a75e0c..e887e75b295 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
@@ -39,7 +39,7 @@ tree
 ```
 * Configuration file
 
-`conf/agent.yaml` is used to manage agent configuration.
+`META-INF/conf/agent.yaml` is used to manage agent configuration.
 Built-in plugins include Jaeger, OpenTracing, Zipkin, OpenTelemetry, 
BaseLogging and Prometheus.
 No plugin is enabled by default.
 

Reply via email to