千分尺中的计数器可以从设定值开始吗



我花了一些时间阅读micrometer.ioCounter。对于我的特定用例,我需要始终使用在应用程序启动时可用的特定值来启动计数器。

由于应用程序有多个pod,我希望设置这个inital值,然后可以增加任意数量的pod。Counter唯一支持的方法是递增。我曾想过使用Gauge,但有各种缺点,因为我的度量始终是一个具有起始集值的无界增量计数器。

以前有人解决过这个用例吗?或者有解决方法吗?

您可以在启动时使用任意值的incrementCounter,但我不建议这样做:

  • 将作为数据增量进行注册和发布
  • 每次重新启动应用程序时都会发生这种情况
  • 这样的Counter会欺骗你,因为你看不到增量的数量,而是其他的东西

你能告诉我们你的用例吗?根据你所说的,我认为你不需要计数器的初始值,而是在你的运行实例中添加某种实例id(例如:pod名称(,并在你的度量后端聚合这些(求和(。

正如@Jonatan所提到的:在这种情况下,您将使用Gauge。您甚至可以创建一个仪表,指向更新的实例变量。

这样,您就可以在启动时将实例变量设置为一个值,并在后台更新它以查询数据库。我在查询太慢的地方使用这种技术,所以我不希望它发生在度量刮擦期间。

最新更新