[*] Служба Java в Kubernetes , несколько стручков. В диапазоне времени.
[*] Счетчики увеличены непосредственно в код , когда возникают определенные деловые события. Метки)
Код: Выделить всё
@Component
public class ExampleMetrics {
private static final String METRIC_SUCCESS = "app_successful_operations";
private static final String TAG_CATEGORY = "category";
private static final String TAG_REGION = "region";
private final MeterRegistry registry;
public ExampleMetrics(MeterRegistry registry) {
this.registry = registry;
}
public void incrementSuccess(String category, String region) {
registry.counter(METRIC_SUCCESS,
TAG_CATEGORY, category,
TAG_REGION, region
).increment();
}
}
Инициировать, в grafana prehane у нас были запросы:
PrettyPrint-Override ">
Код: Выделить всё
sum by (category, region) (
increase(app_successful_operations{category=~"$category", region=~"$region"}[$__rate_interval])
)
, поэтому запросы Grafana увидят стабильные серии: < /p>
Код: Выделить всё
- record: app_successful_operations_normalized_total
expr: |
sum by (category, region) (
app_successful_operations
)
< /code>
Grafana затем использует: < /p>
sum(increase(app_successful_operations_normalized_total{category=~"$category", region=~"$region"}[$__rate_interval]))
< /code>
Это решило проблему с подключением - новые серии Pod больше не вызывают потери данных. Время перезагрузки стручков.
Пример: счетчик может временно прыгать на миллионы, а затем нормализовать. Затем увеличивайте () < /code> интерпретирует сброс как огромный прыжок. < /P>
Вопрос < /strong> < /h3>
Есть ли prometheus safe-safe to: < /p>
агрегировать letrative volat>, так что в новейле (сильных volat> volat volat> volat volat> volat volat> volat grablats < / />
. Не вызывайте отсутствующих данных в увеличении ()
[*], но также избегайте всплесков развертываний [/b], когда счетчик сбрасывает? (например, [5m] ), но это исправляет временное окно, и графана не может выбрать произвольные диапазоны.
Использование rate () вместо увеличения () , но это все еще страдает, если счетчик начинается с средним уровнем. Решает обе проблемы.>
Подробнее здесь: https://stackoverflow.com/questions/797 ... ulti-pod-c