我们遇到了一个问题,我们想要使用
@Observed
注释为代码中的方法创建跟踪范围,这很有帮助,但 Micrometer 似乎为每个方法生成一个指标,但帮助不大:好吧(我猜是为了跟踪表现?)。
有谁知道一种方法来告诉千分尺仅使用观察进行跟踪或仅用于指标而不是当前“两者”的默认行为?
默认情况下,观察 API 不记录指标也不记录跨度。您需要注册处理程序来记录任何内容。这是 API 的“超能力”,你可以决定运行时你想要什么输出。我建议从头到尾观看此演讲:https://www.youtube.com/watch?v=Qyku6cR6ADY#t=14m23s
Spring Boot 另一方面,根据您的类路径为您注册处理程序:如果
micrometer-core
存在,它将注册 DefaultMeterHandler
来记录指标,如果 Micrometer Tracing 在类路径上,它将注册跟踪处理程序。
为了防止
DefaultMeterHandler
注册,您可以执行以下操作:
micrometer-core
ObservationRegistry
并注册您自己的处理程序顺便说一句,为什么你想发布跨度而不是指标?