[英]Using Micrometer Timer across Java processes?
我想使用 Micrometer 收集从一个 Java 进程开始并在另一个 Java 进程中完成的任务的持续时间指标(它们之间通过 Kafka 进行通信)。
我正在考虑使用返回LongTaskTimer.Sample
object 的LongTaskTimer.start()
,然后将其与 Kafka 消息一起传递给第二个进程,然后使用LongTaskTimer.Sample.stop()
记录任务持续时间。 但尚不清楚LongTaskTimer.Sample
对象是否可以序列化,以及这种方法是否可行。
是否有可能使上述方法起作用? 如何? 如果没有,实现既定目标的最简单方法是什么?
不确定这是否重要 - 我的运行时环境是 Spring Boot 2,我正在将指标收集到 Prometheus(使用标准千分尺 prometheus 注册表)。
Micrometer 不支持跨多个 JVM 生成的指标。 您的选择是:
使用多个指标,然后在 grafana 中创建一个视图,该视图将有一个汇总两个(或更多)指标的查询。 它可能不是对流量的精确测量,而是某种平均值,可以提供系统中发生的“感觉”。
使用某种追踪软件。 像 Jaeger 这样的东西(见这里的例子)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.