Фактическая временная метка и временная метка очистки в временных рядах Prometheus

Вот пример: интервал очистки установлен на 30 секунд. Приложение генерирует следующие временные ряды за один цикл очистки:

  1. имя: Counter_1, значение: 2, отметка времени 1590285009
  2. имя: Counter_1, значение: 4, отметка времени 1590285019 (10 секунд после первой)
  3. имя: Counter_1, значение: 0, отметка времени 1590285029 (10 секунд после второй)

Какие временные ряды очищаются в этом случае? Все три или последний с меткой времени, установленной в качестве метки времени очистки?


person Alex Barysevich    schedule 24.05.2020    source источник


Ответы (2)


Он будет хранить данные, доступные на момент очистки, с меткой времени очистки. Итак, это зависит от того, когда царапина произойдет между шагами 1-3. Похоже, вы имеете в виду, что он применяется только после всех из них, и поэтому № 3 с меткой времени очистки будет сохранен. Если, например, царапина произошла между шагами 1 и 2, метрики из №1 будут сохранены.

Как правило, когда метрики «экспортируются», они становятся доступными для очистки, у них нет отметки времени. У клиента нет понятия "история" (есть только у сервера), для чтения доступны только самые последние. Это вектор пары "ключ-значение", сопоставленный с числовым значением (формат можно увидеть, если очистить его самостоятельно, например curl http://localhost:9100/metrics для типичного node_exporter). Периодически сервер очищает цели и сохраняет то, что доступно в это время, с меткой времени очистки.

person creativeChips    schedule 24.05.2020

временная метка, которую Прометей добавляет к выборке, - это время, когда GET отправлено

person yiC    schedule 16.08.2020