当前位置: 首页 > 知识库问答 >
问题:

如何修复在应用程序启动时未加载的微米千分尺bean

解念
2023-03-14

A创建了一个简单的micronaut应用程序,该应用程序公开了测微计度量。我想添加自定义标记,但启动时不会加载这样做的bean。

我错过了什么?备注:它不这样在本地PC时启动intellj.但是当部署在k8s上时,它确实有效。

豆:

@Factory
open class MeterFilterFactory {

    @Bean
    @Singleton
    fun addCommonTags(): MeterFilter {
        return MeterFilter.commonTags(
            Arrays.asList(
                Tag.of("service", "my-super-service"),
                Tag.of("special", "tag comes here")
            )
        )
    }
}

应用配置

micronaut:
  metrics:
    enabled: true
    sensitive: true
    export:
      prometheus:
        enabled: true
        step: PT1M
        descriptions: true
  distribution:
    percentiles-histogram:
      http.server.requests: true
    sla:
      http.server.requests: 1ms,5ms
  binders:
    logback:
      enabled: false
    processor:
      enabled: false
    uptime:
      enabled: false

建立gradle

    compile "io.micronaut.configuration:micronaut-micrometer-registry-statsd"
    compile "io.micronaut:micronaut-management"
    compile "io.micronaut.configuration:micronaut-micrometer-registry-prometheus"

目前我回到

{"name":"system.cpu.usage","measurements":[{"statistic":"VALUE","value":0.07751937984496124}]}

但是我错过了我试图添加的标签。

共有2个答案

唐昊焜
2023-03-14

IntelliJ缓存清除重启解决了该问题。

顾恺
2023-03-14

如果用@Context标记bean,则在初始化上下文时将初始化bean。看https://docs.micronaut.io/1.0.5/api/io/micronaut/context/annotation/Context.html.

我希望这有帮助。

 类似资料:
  • 我正在尝试在我的Grails2应用程序中设置prometheus,所以我遇到了使用micrometer来设置prometheus。我尝试按照下面的说明进行操作:https://micrometer.io/docs/registry/prometheus,将编译行放在中,然后设置一个endpoint来公开度量。然而,该应用程序无法下载千分尺软件包,出现了大量错误,从下面的错误开始: 如有任何帮助,我

  • 我有Java桌面应用程序,运行良好。我可以双击exe或运行jar文件并正常运行。 我想在系统启动时加载此应用程序。如何通过编程实现这一点? 或者,是否有任何工具可以以这样的方式创建exe,即一旦安装,就会在系统启动文件夹中创建快捷方式。 我希望它是系统或代码驱动的,而不是单独将exe放在启动文件夹中。

  • 我想测量处理某些数据需要多长时间:我的应用程序以固定速率从给定源读取该数据。在每个圆圈之前,我存储。我读取数据,将单个时间戳添加到每个条目中。数据被存储,转换,就在我通过WebSockets发送它之前,我想测量和初始时间戳之间的持续时间。 我试过了 但是可视化这一点只允许我使用<code>processingDuration_seconds_count、<code>_max和<code>_ sum

  • 这是我的第一个问题。我一路寻找,尝试了很多,但没有得到我想做的。问题是:我有一个应用程序使用SoundPool播放声音,仅此而已。但是要加载的东西很多(>50),一个一个加载需要时间。看一看; @Override公共视图onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState){View V

  • 我对Spring很陌生,正在尝试将我的应用程序连接到麋鹿。该应用程序运行的是Spring boot 1.5.5,因此我使用的是微米遗产。我的pom看起来像这样: 每当我尝试启动我的应用程序时,我都会收到以下错误: 根本原因似乎是类io.micrometer.core.instrument.config.validate.Validated它似乎没有像它应该的那样出现在包中。对此有什么想法吗?

  • 我正在尝试在我的多租户应用程序中实现假客户概念。我有两个微服务。在其中一个微服务中,我编写了从数据库获取数据的API。我需要在我的其他微服务中使用这些数据。为此,我使用了假客户概念。我需要第二个微服务加载期间的数据。但这并没有发生。我有以下错误 这是我的基于数据源的MultitenantConnectionProviderImpl。类,我在其中编写了伪客户机逻辑 这是一个虚拟客户端。我将第二个微服