prometheus-registry-在core层抽取公共configure

This commit is contained in:
2025-10-10 16:50:26 +08:00
parent ec51e1f36d
commit 109e8a1148
4 changed files with 29 additions and 21 deletions

View File

@@ -8,7 +8,6 @@ import org.springframework.boot.SpringBootConfiguration;
import org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryCustomizer;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.annotation.EnableScheduling;
@@ -27,12 +26,6 @@ import org.springframework.scheduling.annotation.EnableScheduling;
@SpringBootConfiguration
public class AdminApplication {
@Bean
MeterRegistryCustomizer<MeterRegistry> configurer() {
return (registry) -> registry.config().commonTags("application", "pk_admin");
}
public static void main(String[] args) {
SpringApplication.run(AdminApplication.class, args);
}

View File

@@ -0,0 +1,27 @@
package com.accompany.core.autoconfigure;
import io.micrometer.core.instrument.MeterRegistry;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryCustomizer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* 公共的 Metrics 配置类
* 自动从 spring.application.name 获取应用名称作为标签
*/
@Configuration
public class MetricsAutoConfiguration {
@Value("${spring.application.name:pk_unknown}")
private String applicationName;
@Value("${spring.profiles.active:unknown}")
private String activeProfile;
@Bean
public MeterRegistryCustomizer<MeterRegistry> meterRegistryCustomizer() {
String applicationTag = applicationName + "(" + activeProfile + ")";
return registry -> registry.config().commonTags("application", applicationTag);
}
}

View File

@@ -34,12 +34,6 @@ public class BusinessApplication extends SpringBootServletInitializer {
return builder.sources(BusinessApplication.class);
}
@Bean
MeterRegistryCustomizer<MeterRegistry> configurer() {
return (registry) -> registry.config().commonTags("application", "pk_bussiness");
}
public static void main(String[] args) {
SpringApplication.run(BusinessApplication.class, args);
}

View File

@@ -7,7 +7,6 @@ import org.springframework.boot.SpringApplication;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryCustomizer;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.annotation.EnableScheduling;
@@ -28,9 +27,4 @@ public class JobApplication {
public static void main(String[] args) {
SpringApplication.run(JobApplication.class, args);
}
@Bean
MeterRegistryCustomizer<MeterRegistry> configurer() {
return (registry) -> registry.config().commonTags("application", "pk_job");
}
}