【问题标题】:Add Label to prometheus Histogram After Starting the timer启动定时器后为普罗米修斯直方图添加标签
【发布时间】:2017-04-18 15:46:44
【问题描述】:

我想在 Prometheus 上使用直方图获取用户登录统计信息。

我在进入登录方法的时候创建了一个定时器,观察方法结束时的持续时间,这个很简单很好看。

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

  • 我想用 login_failed/login_success 标记
  • 我想标记组织用户登录(多租户)

使用简单的 java 客户端,我不知道如何实现这一点。

首先,我需要知道我的设计是否存在缺陷,因为我对 Prometheus 还很陌生。

第二,有没有办法完成这个任务?

谢谢,

【问题讨论】:

    标签: java timer prometheus


    【解决方案1】:

    我想用 login_failed/login_success 标记

    不建议这样做,而是将总尝试次数和失败次数作为两个单独的指标进行跟踪。计算比率时使用起来更容易。

    第二,有没有办法完成这个任务?

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

    【讨论】:

      【解决方案2】:

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

      所以不要使用

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

      你需要

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

      【讨论】:

        猜你喜欢
        • 2022-12-02
        • 2019-09-20
        • 1970-01-01
        • 1970-01-01
        • 2022-12-22
        • 1970-01-01
        • 2020-01-10
        • 2020-11-12
        • 2022-12-06
        相关资源
        最近更新 更多