添加标签到prometheus直方图启动计时器后

时间:2017-04-18 15:46:45

标签: java timer prometheus

我希望在Prometheus上使用直方图获得用户登录统计信息。

当我输入登录方法时,我创建了一个计时器,并观察方法结束时的持续时间,这非常简单而且很好。

我想念的是,我想在启动计时器之后标记此测量。例如:

  • 我想用login_failed / login_success标记
  • 我想与登录到(多租户)的组织用户签名

使用简单的Java客户端,我无法弄清楚如何实现这一点。

首先,我需要知道我的设计是否有缺陷,因为我对普罗米修斯来说还不够。

第二,有没有办法实现这个任务?

感谢,

2 个答案:

答案 0 :(得分:1)

  

我想用login_failed / login_success标记

建议不要这样做,而是将总尝试次数和失败次数记录为两个单独的指标。在计算比率时,它更容易使用。

  

第二,有没有办法实现这个任务?

查看https://github.com/prometheus/client_java/blob/master/simpleclient/src/main/java/io/prometheus/client/SimpleTimer.java

答案 1 :(得分:0)

假设您使用的是 simpleclient 库,您无法在启动计时器时设置标签。

所以而不是使用

Timer timer = myMetric.startTimer();
...
timer.observeDuration();

你需要

SimpleTimer timer = new SimpleTimer();
...
myMetric.label(myLabel).observe(timer.elapsedSeconds());