使用 Grails 注册 bean for MeterRegistryCustomizer



遵循 Spring Boot Metrics 文档后,我能够轻松地为 datadog 设置指标日志记录。剩下的唯一内容是为我的实例设置自定义标签。使用 Spring Boot,您可以通过注册一个新 bean 来做到这一点:

@Bean
MeterRegistryCustomizer<MeterRegistry> metricsCommonTags() {
    return registry -> registry.config().commonTags("region", "us-east-1");
}

但是,我无法在Grails 3中注册它。不在resource.groovy中,也不在应用程序主类Application.groovy中。有什么方法可以在Grails 3中设置它吗?

在 Grails 3 中,您应该将以下代码放在grails-app/conf/spring/resources.groovy

import io.micrometer.core.instrument.MeterRegistry
import io.micrometer.spring.autoconfigure.MeterRegistryCustomizer
class CommonTagCustomizer implements MeterRegistryCustomizer<MeterRegistry> {
    void customize(MeterRegistry registry) {
        registry.config().commonTags("host", "myapp-dev")
    }
}
beans = {
    commonTags(CommonTagCustomizer) {}
}

最新更新