В настоящее время я нахожусь в процессе перемещения моих метрик с statsd
на prometheus
.
Я пытаюсь преобразовать запросы из синтаксиса statsD в prometheus. Я не уверен в этом и ищу документацию, сравнивающую их. В частности, этот диапазон синтаксиса [5m] и скорость et c. Он явно не переводится на язык statsD.
В этом примере я хочу измерить и изобразить среднее время задержки обрабатываемых событий между временной меткой, в которой было создано событие (атрибут события), и текущим временем. Метри c сообщается самим кодом:
Псевдо:
def processEvent(event)
eventTime = event.timestamp
now = Now()
lag = now - eventTime
...
statsD.time(...metric_name(event.feed,event.action)..., lag)
запрос statsD выглядит следующим образом:
groupByNode(stats.timers.<node_ip>.lag.<feed>.<action>.mean, 4, 'avg')
(среднее время среднего значения для этого показателя c во всех случаях)
в моем новом коде создает значение c следующим образом:
current_lag_gauge = Gauge('kafka_lag', 'tracks the lag of events',labelnames=['feed', 'action'])
lag = event.timestamp - Now()
...
current_lag_gauge.labels(feed="v1", action="v2").set(lag)
библиотека добавив несколько дополнительных ярлыков. Метри c выглядит следующим образом:
kafka_lag{action="v2",app="app1",base_chart_version="xxx",feed="123",instance="1.2.3.4:8000",job="kubernetes-xxx",kubernetes_namespace="xxxx",kubernetes_pod_name="xxxxx",pod_template_hash="123431314",release="xxxx"}
Существует ли справочное руководство или шпаргалка для сравнения 2? Также был бы рад получить несколько примеров запросов, решающих этот перевод.