Концепции

Протокольные метрики

Дашборд метрик сам определяет протокол прогона — FIX, gRPC, WebSocket, HTTP или generic — и подстраивает набор плиток

Обзор

Набор тайлов gRPC-протокола в представлении метрик

Дашборд Metrics не спрашивает, какой тест вы запускали, — он определяет протокол по семействам метрик, которые прогон прислал, и подставляет соответствующий набор плиток. Бейдж рядом с селектором прогона показывает, что определилось: FIX protocol, gRPC, WebSocket, HTTP или Generic.

Как работает определение

Строки сводки движка несут протокол-специфичные семейства метрик (grpc_msgs_sent, ws_msg_rtt, fix_sessions, …). Дашборд выбирает первое подошедшее семейство в таком порядке:

  1. FIX — присутствуют fix_sessions / fix_messages_sent
  2. gRPC — присутствуют grpc_msgs_sent / grpc_msg_rtt / grpc_req_duration
  3. WebSocket — присутствуют ws_msgs_sent / ws_msg_rtt
  4. HTTP — присутствует http_req_duration
  5. Generic — ничего из перечисленного (например, прогон только со sleep или кастомным скриптом)

Определение работает per run, поэтому один и тот же тест может сегодня показывать HTTP-перцентили, а завтра — gRPC-плитки, если вы поменяли скрипт.

Набор плиток gRPC

У gRPC-прогона — throughput, счётчики сообщений и две латенси-гистограммы:

ПлиткаЗначение
Send rateОтправлено сообщений в секунду, grpc_msgs_sent
Receive rateПолучено сообщений в секунду, grpc_msgs_received
Messages sent / receivedИтоги за прогон
Message RTT p50 / p95 / maxgrpc_msg_rtt — от отправки до совпавшего ответа
Call duration p95grpc_req_duration — время унарного вызова

WebSocket-набор зеркалит его (rate отправки/приёма, счётчики сообщений, перцентили message RTT) плюс плитку Handshake p95, наполняемую из http_req_duration. FIX-набор добавляет здоровье сессий: сессии, успешность logon'ов, ошибки сессий и латенси сессии. Обычные HTTP-прогоны показывают классический набор — success rate, всего запросов, throughput и латенси p50/p90/p95/p99/max.

Дальше

  • gRPC и WebSocket — actions движка, порождающие эти семейства метрик.
  • gRPC из CLI — прогон с метриками grpc_* за пять минут.