Отображение задержки API HTTP-запроса с использованием метрик Spring Boot Micrometer - PullRequest
0 голосов
/ 14 декабря 2018

Мы используем Prometheus для очистки метрик Spring Boot 2.0.0, а затем сохраняем их в InfluxDB.Затем мы используем Grafana для визуализации их из InfluxDB.

Наши зависимости микрометра:

  • micrometer-core
  • micrometer-registry-prometheus

Я хочу показать метрику задержки для наших REST API.

Из нашего скребка Prometheus я вижу, что эти метрики генерируются для HTTP-запросов.

  • http_server_requests_seconds_count
  • http_server_requests_seconds_sum
  • http_server_requests_seconds_max

Я понимаю из документации по микрометрам, https://micrometer.io/docs/concepts#_client_side,, что задержка может быть достигнута путем объединения 2 из сгенерированных вышеmetrics: totalTime / count.

Однако наш источник данных - InfluxDB, который не поддерживает комбинирование измерений, https://docs.influxdata.com/influxdb/v1.7/troubleshooting/frequently-asked-questions/#how-do-i-query-data-across-measurements,, поэтому я не могу реализовать эту функцию в InfluxDB.

нужно предоставить собственную реализацию этой метрики задержки в компоненте Spring Boot, или это более простой способ, которым я могу добиться этого?

1 Ответ

0 голосов
/ 18 декабря 2018

Вы можете присоединиться к своим измерениям в Kapacitor, другом компоненте стека Influxdata TICK.

Это будет довольно просто с JoinNode , за которым, возможно, последует Eval, чтобы вычислить то, что вы хотите правильнона месте.В документации множество примеров.

Хотя проблема здесь иная: вы излишне переоценили свое решение, и более того - вы пытаетесь объединить два продукта с одинаковыми * 1008.* цель, но использует другой подход к ней.Насколько он умен?

Ты уже разбираешься с Прометеем?Отлично!Оставайтесь с этим, делайте математику там, это просто.И Графана тоже работает с Прометеем, прямо из коробки!

Вы хотите, чтобы ваши данные были в Influx (я могу понять, что это, безусловно, более продвинуто)?Отлично!Микрометр может отправить его прямо в Influx из коробки - и, по крайней мере, двумя способами!

Лично я не вижу причин делать то, что вы предполагаете делать, вы можете поделиться им?

...