in edas-demo/observability-demo/prometheus-demo/src/main/java/com/alibabacloud/edas/exporter/PrometheusExporter.java [181:231]
public void afterPropertiesSet() throws Exception {
MetricReader reader = PrometheusHttpServer.builder()
.setPort(prometheusPort)
.build();
SdkMeterProvider provider = SdkMeterProvider.builder()
.registerMetricReader(reader)
.setResource(Resource.getDefault())
.build();
logger.info("Prometheus metrics exporter port listening on port: {}, " +
"you can change it via setting property with key: " +
"cloudapp.prometheus.exporter.port", prometheusPort);
meter = provider.meterBuilder(INSTRUMENTATION_SCOPE).build();
activeCount = meter.gaugeBuilder("active_count")
.setDescription("Thread pool active count")
.ofLongs()
.build();
completedTaskCount = meter.gaugeBuilder("completed_task_count")
.setDescription("Thread pool completed task count")
.ofLongs()
.build();
corePoolSize = meter.gaugeBuilder("core_pool_size")
.setDescription("Thread pool core pool size")
.ofLongs()
.build();
poolSize = meter.gaugeBuilder("pool_size")
.setDescription("Thread pool pool size")
.ofLongs()
.build();
largestPoolSize = meter.gaugeBuilder("largest_pool_size")
.setDescription("Thread pool largest pool size")
.ofLongs()
.build();
maximumPoolSize = meter.gaugeBuilder("maximum_pool_size")
.setDescription("Thread pool maximum pool size")
.ofLongs()
.build();
taskCount = meter.gaugeBuilder("task_count")
.setDescription("Thread pool task count")
.ofLongs()
.build();
}