弹簧千分尺执行器 StatsD 标签定义

问题描述

我正在尝试配置弹簧执行器指标以及要发送到 Datadog stastd 代理的千分尺。

不过,我想让它们都带有标签,这样我就可以在我的 Datadog 仪表板中仅过滤我的服务指标,而不考虑其他服务指标。

我已添加

management:
  metrics:
    tags:
      application: my_app

到我的服务指标配置,但我在 Datadog 仪表板中看不到此标记值。我在应用程序日志和执行器日志文件中都没有看到任何奇怪的东西。

我在我的服务中没有关于指标的任何其他内容,因为我不想实现自定义指标,只想使用执行器提供的指标。

整个指标配置如下所示:

management:
  metrics:
    export:
      statsd:
        host: ${STATSD_AGENT_HOST}
        port: ${STATSD_AGENT_HOST_PORT}
        flavor: datadog
    tags:
      application: my_app
  endpoints:
    web:
      exposure:
        include: "*"
  endpoint:
    health:
      show-details: ALWAYS

版本:

千分尺版本:1.6.4

执行器版本:2.4.3

春季版:2.3.8

关于让标签到达 Datadog 可能缺少什么的任何线索?

谢谢!

解决方法

我们在评论中发现了这一点,我发布了一个总结它的答案:似乎根本原因是使用不同版本的不同 spring-boot 模块。

最好不要自己定义版本,而是使用 BOM 并让他们为您定义版本,例如见:spring-boot-dependencies。这样,您将使用兼容(并经过测试)的版本。

management.metrics.tags.your-tag 是向所有指标添加标签的方法。检查这一点的一个好方法是查看 /actuator/metrics