songxiaosheng commented on code in PR #11461:
URL: https://github.com/apache/dubbo/pull/11461#discussion_r1096610660
##########
dubbo-metrics/dubbo-metrics-api/src/main/java/org/apache/dubbo/metrics/model/ThreadPoolMetric.java:
##########
@@ -0,0 +1,102 @@
+package org.apache.dubbo.metrics.model;
+
Review Comment:
please add apache license
##########
dubbo-metrics/dubbo-metrics-default/src/main/java/org/apache/dubbo/metrics/collector/DefaultMetricsCollector.java:
##########
@@ -45,9 +49,19 @@ public class DefaultMetricsCollector implements
MetricsCollector {
private AtomicBoolean collectEnabled = new AtomicBoolean(false);
private final List<MetricsListener> listeners = new ArrayList<>();
private final MetricsStatComposite stats;
+ private final Set<ThreadPoolMetric> threadPoolMetricSet = new
HashSet<ThreadPoolMetric>();
public DefaultMetricsCollector() {
this.stats = new MetricsStatComposite( this);
+ FrameworkModel frameworkModel = FrameworkModel.defaultModel();
+ FrameworkExecutorRepository frameworkExecutorRepository =
frameworkModel.getBeanFactory().getBean(FrameworkExecutorRepository.class);
+ //ExecutorService executorService =
frameworkExecutorRepository.getSharedExecutor();
Review Comment:
please remove unused comment
##########
dubbo-metrics/dubbo-metrics-default/src/main/java/org/apache/dubbo/metrics/collector/DefaultMetricsCollector.java:
##########
@@ -46,12 +53,19 @@
public class DefaultMetricsCollector implements MetricsCollector {
private AtomicBoolean collectEnabled = new AtomicBoolean(false);
+ private final Set<ThreadPoolMetric> threadPoolMetricSet = new
HashSet<ThreadPoolMetric>();
Review Comment:
extract data to your MetricsStatHandler
##########
dubbo-metrics/dubbo-metrics-default/src/main/java/org/apache/dubbo/metrics/collector/DefaultMetricsCollector.java:
##########
@@ -46,12 +53,19 @@
public class DefaultMetricsCollector implements MetricsCollector {
private AtomicBoolean collectEnabled = new AtomicBoolean(false);
+ private final Set<ThreadPoolMetric> threadPoolMetricSet = new
HashSet<ThreadPoolMetric>();
private final MetricsStatComposite stats;
private final SimpleMetricsEventMulticaster eventMulticaster;
public DefaultMetricsCollector() {
- this.stats = new MetricsStatComposite(this);
+ this.stats = new MetricsStatComposite( this);
this.eventMulticaster = SimpleMetricsEventMulticaster.getInstance();
+ FrameworkModel frameworkModel = FrameworkModel.defaultModel();
+ FrameworkExecutorRepository frameworkExecutorRepository =
frameworkModel.getBeanFactory().getBean(FrameworkExecutorRepository.class);
+ String applicationName =
frameworkModel.defaultApplication().getApplicationName();
Review Comment:
don't get application name from global collector it is belong to
frameworkModel there is no application can be used
##########
dubbo-metrics/dubbo-metrics-default/src/main/java/org/apache/dubbo/metrics/collector/DefaultMetricsCollector.java:
##########
@@ -45,9 +49,19 @@ public class DefaultMetricsCollector implements
MetricsCollector {
private AtomicBoolean collectEnabled = new AtomicBoolean(false);
private final List<MetricsListener> listeners = new ArrayList<>();
private final MetricsStatComposite stats;
+ private final Set<ThreadPoolMetric> threadPoolMetricSet = new
HashSet<ThreadPoolMetric>();
public DefaultMetricsCollector() {
this.stats = new MetricsStatComposite( this);
+ FrameworkModel frameworkModel = FrameworkModel.defaultModel();
+ FrameworkExecutorRepository frameworkExecutorRepository =
frameworkModel.getBeanFactory().getBean(FrameworkExecutorRepository.class);
+ //ExecutorService executorService =
frameworkExecutorRepository.getSharedExecutor();
+ String applicationName =
frameworkModel.defaultApplication().getApplicationName();
+ threadPoolMetricSet.add(new ThreadPoolMetric(applicationName,
"SharedExecutor",
((ThreadPoolExecutor)frameworkExecutorRepository.getSharedExecutor())));
+ threadPoolMetricSet.add(new ThreadPoolMetric(applicationName,
"MappingRefreshingExecutor",
((ThreadPoolExecutor)frameworkExecutorRepository.getMappingRefreshingExecutor())));
+ threadPoolMetricSet.add(new ThreadPoolMetric(applicationName,
"PoolRouterExecutor",
((ThreadPoolExecutor)frameworkExecutorRepository.getPoolRouterExecutor())));
+ //threadPoolMetricSet.add(new ThreadPoolMetric(applicationName, "",
((ScheduledThreadPoolExecutor)frameworkExecutorRepository.getCacheRefreshingScheduledExecutor())));
Review Comment:
please remove unused comment
##########
dubbo-metrics/dubbo-metrics-default/src/main/java/org/apache/dubbo/metrics/collector/DefaultMetricsCollector.java:
##########
@@ -46,12 +53,19 @@
public class DefaultMetricsCollector implements MetricsCollector {
private AtomicBoolean collectEnabled = new AtomicBoolean(false);
+ private final Set<ThreadPoolMetric> threadPoolMetricSet = new
HashSet<ThreadPoolMetric>();
private final MetricsStatComposite stats;
private final SimpleMetricsEventMulticaster eventMulticaster;
public DefaultMetricsCollector() {
- this.stats = new MetricsStatComposite(this);
+ this.stats = new MetricsStatComposite( this);
this.eventMulticaster = SimpleMetricsEventMulticaster.getInstance();
+ FrameworkModel frameworkModel = FrameworkModel.defaultModel();
Review Comment:
please extract this code to stathandle ,refactor code
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]