This is an automated email from the ASF dual-hosted git repository.
albumenj pushed a commit to branch 3.2
in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/3.2 by this push:
new e1baaae71b Metrics code opt: redundant, modifier, magic (#11553)
e1baaae71b is described below
commit e1baaae71b8f73fd248e7348c24f28554cf1b2e6
Author: Mengyang Tang <[email protected]>
AuthorDate: Wed Feb 15 06:57:20 2023 +0800
Metrics code opt: redundant, modifier, magic (#11553)
* Remove redundant code
* Optimize modifier
* Optimize magic constant
* Resolve conflicts
* Delete empty file
---
.../org/apache/dubbo/metrics/DubboMetrics.java | 5 +++--
.../AbstractDefaultDubboObservationConvention.java | 8 +++++---
.../observation/ObservationReceiverFilter.java | 4 ++--
.../observation/ObservationSenderFilter.java | 4 ++--
.../apache/dubbo/metrics/model/MethodMetric.java | 5 +++--
.../metrics/collector/DefaultMetricsCollector.java | 24 +++++++++++-----------
6 files changed, 27 insertions(+), 23 deletions(-)
diff --git
a/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/DubboMetrics.java
b/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/DubboMetrics.java
index 87e26c8a23..704fdb217e 100644
---
a/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/DubboMetrics.java
+++
b/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/DubboMetrics.java
@@ -22,10 +22,11 @@ import io.micrometer.core.instrument.binder.MeterBinder;
public class DubboMetrics implements MeterBinder {
- public static volatile MeterRegistry globalRegistry = null;
+ public static volatile MeterRegistry globalRegistry = null;
+
@Override
public void bindTo(MeterRegistry registry) {
- this.globalRegistry = registry;
+ globalRegistry = registry;
}
public void destroy() {
diff --git
a/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/AbstractDefaultDubboObservationConvention.java
b/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/AbstractDefaultDubboObservationConvention.java
index de52947673..d975e74da8 100644
---
a/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/AbstractDefaultDubboObservationConvention.java
+++
b/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/AbstractDefaultDubboObservationConvention.java
@@ -19,6 +19,8 @@ package org.apache.dubbo.metrics.filter.observation;
import io.micrometer.common.KeyValues;
import io.micrometer.common.docs.KeyName;
import io.micrometer.common.lang.Nullable;
+
+import org.apache.dubbo.common.constants.CommonConstants;
import org.apache.dubbo.common.utils.StringUtils;
import org.apache.dubbo.rpc.Invocation;
import org.apache.dubbo.rpc.support.RpcUtils;
@@ -46,13 +48,13 @@ class AbstractDefaultDubboObservationConvention {
String serviceName = StringUtils.hasText(invocation.getServiceName())
? invocation.getServiceName() :
readServiceName(invocation.getTargetServiceUniqueName());
String methodName = RpcUtils.getMethodName(invocation);
String method = StringUtils.hasText(methodName) ? methodName : "";
- return serviceName + "/" + method;
+ return serviceName + CommonConstants.PATH_SEPARATOR + method;
}
private String readServiceName(String targetServiceUniqueName) {
- String[] splitByHyphen = targetServiceUniqueName.split("/"); //
foo-provider/a.b.c:1.0.0 or a.b.c:1.0.0
+ String[] splitByHyphen =
targetServiceUniqueName.split(CommonConstants.PATH_SEPARATOR); //
foo-provider/a.b.c:1.0.0 or a.b.c:1.0.0
String withVersion = splitByHyphen.length == 1 ?
targetServiceUniqueName : splitByHyphen[1];
- String[] splitByVersion = withVersion.split(":"); // a.b.c:1.0.0
+ String[] splitByVersion =
withVersion.split(CommonConstants.GROUP_CHAR_SEPARATOR); // a.b.c:1.0.0
if (splitByVersion.length == 1) {
return withVersion;
}
diff --git
a/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/ObservationReceiverFilter.java
b/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/ObservationReceiverFilter.java
index ee9bdf2588..6157d98db0 100644
---
a/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/ObservationReceiverFilter.java
+++
b/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/ObservationReceiverFilter.java
@@ -36,9 +36,9 @@ import static
org.apache.dubbo.common.constants.CommonConstants.PROVIDER;
@Activate(group = PROVIDER, order = -1)
public class ObservationReceiverFilter implements Filter, BaseFilter.Listener,
ScopeModelAware {
- private ObservationRegistry observationRegistry = ObservationRegistry.NOOP;
+ private final ObservationRegistry observationRegistry;
- private DubboServerObservationConvention serverObservationConvention =
null;
+ private final DubboServerObservationConvention serverObservationConvention;
public ObservationReceiverFilter(ApplicationModel applicationModel) {
observationRegistry =
applicationModel.getBeanFactory().getBean(ObservationRegistry.class);
diff --git
a/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/ObservationSenderFilter.java
b/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/ObservationSenderFilter.java
index e8d39b2d3f..5a7e3661f5 100644
---
a/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/ObservationSenderFilter.java
+++
b/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/filter/observation/ObservationSenderFilter.java
@@ -37,9 +37,9 @@ import static
org.apache.dubbo.common.constants.CommonConstants.CONSUMER;
@Activate(group = CONSUMER, order = -1)
public class ObservationSenderFilter implements ClusterFilter,
BaseFilter.Listener, ScopeModelAware {
- private ObservationRegistry observationRegistry = ObservationRegistry.NOOP;
+ private final ObservationRegistry observationRegistry;
- private DubboClientObservationConvention clientObservationConvention =
null;
+ private final DubboClientObservationConvention clientObservationConvention;
public ObservationSenderFilter(ApplicationModel applicationModel) {
observationRegistry =
applicationModel.getBeanFactory().getBean(ObservationRegistry.class);
diff --git
a/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/model/MethodMetric.java
b/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/model/MethodMetric.java
index 2cece7f77d..cee91211dd 100644
---
a/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/model/MethodMetric.java
+++
b/dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/model/MethodMetric.java
@@ -17,6 +17,7 @@
package org.apache.dubbo.metrics.model;
+import org.apache.dubbo.common.constants.CommonConstants;
import org.apache.dubbo.rpc.Invocation;
import org.apache.dubbo.rpc.RpcInvocation;
@@ -134,7 +135,7 @@ public class MethodMetric implements Metric {
}
String group = null;
String interfaceAndVersion;
- String[] arr = serviceUniqueName.split("/");
+ String[] arr = serviceUniqueName.split(CommonConstants.PATH_SEPARATOR);
if (arr.length == 2) {
group = arr[0];
interfaceAndVersion = arr[1];
@@ -142,7 +143,7 @@ public class MethodMetric implements Metric {
interfaceAndVersion = arr[0];
}
- String[] ivArr = interfaceAndVersion.split(":");
+ String[] ivArr =
interfaceAndVersion.split(CommonConstants.GROUP_CHAR_SEPARATOR);
String interfaceName = ivArr[0];
String version = ivArr.length == 2 ? ivArr[1] : null;
diff --git
a/dubbo-metrics/dubbo-metrics-default/src/main/java/org/apache/dubbo/metrics/collector/DefaultMetricsCollector.java
b/dubbo-metrics/dubbo-metrics-default/src/main/java/org/apache/dubbo/metrics/collector/DefaultMetricsCollector.java
index 40c58e86b7..32049c6aa4 100644
---
a/dubbo-metrics/dubbo-metrics-default/src/main/java/org/apache/dubbo/metrics/collector/DefaultMetricsCollector.java
+++
b/dubbo-metrics/dubbo-metrics-default/src/main/java/org/apache/dubbo/metrics/collector/DefaultMetricsCollector.java
@@ -43,13 +43,13 @@ import static
org.apache.dubbo.metrics.model.MetricsKey.APPLICATION_METRIC_INFO;
*/
public class DefaultMetricsCollector implements MetricsCollector {
- private AtomicBoolean collectEnabled = new AtomicBoolean(false);
+ private final AtomicBoolean collectEnabled = new AtomicBoolean(false);
private final SimpleMetricsEventMulticaster eventMulticaster;
- private MethodMetricsSampler methodSampler = new
MethodMetricsSampler(this);
- private ThreadPoolMetricsSampler threadPoolSampler = new
ThreadPoolMetricsSampler(this);
+ private final MethodMetricsSampler methodSampler = new
MethodMetricsSampler(this);
+ private final ThreadPoolMetricsSampler threadPoolSampler = new
ThreadPoolMetricsSampler(this);
private String applicationName;
private ApplicationModel applicationModel;
- private List<MetricsSampler> samplers = new ArrayList<>();
+ private final List<MetricsSampler> samplers = new ArrayList<>();
public DefaultMetricsCollector() {
this.eventMulticaster = SimpleMetricsEventMulticaster.getInstance();
@@ -66,11 +66,11 @@ public class DefaultMetricsCollector implements
MetricsCollector {
return this.applicationName;
}
- public ApplicationModel getApplicationModel(){
+ public ApplicationModel getApplicationModel() {
return this.applicationModel;
}
- public SimpleMetricsEventMulticaster getEventMulticaster(){
+ public SimpleMetricsEventMulticaster getEventMulticaster() {
return this.eventMulticaster;
}
@@ -82,14 +82,14 @@ public class DefaultMetricsCollector implements
MetricsCollector {
return collectEnabled.get();
}
- public MethodMetricsSampler getMethodSampler(){
+ public MethodMetricsSampler getMethodSampler() {
return this.methodSampler;
}
public void collectApplication(ApplicationModel applicationModel) {
this.setApplicationName(applicationModel.getApplicationName());
this.applicationModel = applicationModel;
-
applicationSampler.inc(applicationName,MetricsEvent.Type.APPLICATION_INFO);
+ applicationSampler.inc(applicationName,
MetricsEvent.Type.APPLICATION_INFO);
}
@Override
@@ -106,13 +106,13 @@ public class DefaultMetricsCollector implements
MetricsCollector {
this.eventMulticaster.addListener(listener);
}
- public SimpleMetricsCountSampler<String,MetricsEvent.Type,
ApplicationMetric> applicationSampler = new
SimpleMetricsCountSampler<String,MetricsEvent.Type,ApplicationMetric>(){
+ public SimpleMetricsCountSampler<String, MetricsEvent.Type,
ApplicationMetric> applicationSampler = new SimpleMetricsCountSampler<String,
MetricsEvent.Type, ApplicationMetric>() {
@Override
public List<MetricSample> sample() {
List<MetricSample> samples = new ArrayList<>();
-
this.getCount(MetricsEvent.Type.APPLICATION_INFO).filter(e->!e.isEmpty())
- .ifPresent(map -> map.forEach((k, v) -> samples.add(new
GaugeMetricSample(APPLICATION_METRIC_INFO, k.getTags(),
- APPLICATION, v::get))));
+ this.getCount(MetricsEvent.Type.APPLICATION_INFO).filter(e ->
!e.isEmpty())
+ .ifPresent(map -> map.forEach((k, v) -> samples.add(new
GaugeMetricSample(APPLICATION_METRIC_INFO, k.getTags(),
+ APPLICATION, v::get))));
return samples;
}