Метрики NBI

Метрики NBI

Метрики актуальны, начиная с версии 1.10.

В этой версии метрики доступны:

  • по каждому методу wsdl: иcпользуется тип timer;

  • по клиентам, обращающимся в NBI (host): используется тип meter;

  • по кодам возвращаемых ошибок: используется тип meter;

  • по клиентам и вызываемым ими методам: используется тип meter;

Описание метрики типа Timer

Метрика Описание метрики

count

количество событий

max

максимальная длительность вызова, наблюдаемая с момента запуска показателей

mean

средняя длительность вызова, наблюдаемая с момента запуска показателей

min

минимальная длительность вызова, наблюдаемая с момента запуска показателей

stddev

стандартное отклонение

p50

значение 50-го процентиля

p75

значение 75-го процентиля

p95

значение 95-го процентиля

p98

значение 98-го процентиля

p99

значение 99-го процентиля

p999

значение 999-го процентиля

mean_rate

средняя скорость запросов

m1_rate

скорость запросов за одну минуту

m5_rate

скорость запросов за пять минут

m15_rate

скорость запросов за пятнадцать минут

rate_unit

запросы в секунду

duration_unit

миллисекунды

Описание метрики типа Meter

Метрика Описание метрики

count

количество событий

mean_rate

средняя скорость запросов

m1_rate

скорость запросов за одну минуту

m5_rate

скорость запросов за пять минут

m15_rate

скорость запросов за пятнадцать минут

rate_unit

запросы в секунду

duration_unit

миллисекунды

Meter измеряет скорость событий в единицу времени и предоставляет экспоненциально-взвешенное скользящее среднее значение RPS (Requests per second) для минутного, пятиминутного и пятнадцатиминутного окна. Это означает, что в результатах одного измерения (например, пятиминутного окна) мы видим данные за последние 5 минут с уклоном в сторону более новых данных.

Начало работы с метриками в NBI

Для сохранения результатов измерений в NBI для всех типов метрик используется один общий репортер. Для каждой цели регистрации метрик создается .csv файл и каждые 15 минут ее состояние записывается в качестве новой строки или нескольких строк, в зависимости от цели регистрации метрик. После старта приложения и запроса главной страницы, репортер начинает выводить метрики в .csv файлы. Результаты сохраняются в .csv файлах в директорию /var/log/eltex-axis/radius-nbi/metricsNBI. Период сохранения метрик в файлы может быть изменен в главном конфигурационном файле.

/etc/eltex-radius-nbi/radius_nbi_config.txt

# metrics
metric.interval.s=30
Общая нагрузка на NBI (total.csv).

Используя этот лог, можно

  • построить кривую изменения нагрузки по времени;

  • узнать пиковую нагрузку;

  • найти наименее загруженный период перед планированием работ на ядре.

t;count;mean_rate;m1_rate;m5_rate;m15_rate;rate_unit
2018-11-02 14:31:50;3;0.089;0.396;0.552;0.584;second
2018-11-02 14:32:20;22;0.345;0.538;0.562;0.585;second
Нагрузка на NBI по клиентам (clients.csv).

Используя этот лог, можно

  • узнать, какой из клиентов NBI (серверов в сети ядра) создает наибольшую нагрузку на NBI;

  • обнаружить случаи несанкционированного доступа в NBI с других машин (например, случайно с тестовых серверов).

t;client_ip;count;mean_rate;m1_rate;m5_rate;m15_rate;rate_unit
2018-11-02 14:42:20;127.0.0.1;3;0.005;0.000;0.068;0.290;second
2018-11-02 14:42:20;192.168.26.211;19;0.030;0.000;0.033;0.111;second
2018-11-02 14:42:50;127.0.0.1;3;0.004;0.000;0.061;0.280;second
2018-11-02 14:42:50;192.168.26.211;19;0.029;0.000;0.030;0.107;second
Время выполнения для каждого метода wsdl (executeTimer.csv).

Используя этот лог, можно

  • найти самые медленные методы для их последующей оптимизации в ПО;

  • найти методы, которые вызываются чаще всего;

  • проверить был ли хоть один вызов метода за все время работы.

t;wsdl_action;count;max;mean;min;stddev;p50;p75;p95;p98;p99;p999;mean_rate;m1_rate;m5_rate;m15_rate;rate_unit;duration_unit
2018-11-02 14:47:20;GetClientInfo;1;3.992;3.992;3.992;0.000;3.992;3.992;3.992;3.992;3.992;3.992;0.001;0.000;0.008;0.069;second;milliseconds
2018-11-02 14:47:20;GetFullDomainsChanged;1;81.012;81.012;81.012;0.000;81.012;81.012;81.012;81.012;81.012;81.012;0.001;0.000;0.008;0.069;second;milliseconds
2018-11-02 14:47:20;GetVersion;19;0.180;0.041;0.018;0.034;0.031;0.039;0.180;0.180;0.180;0.180;0.020;0.000;0.012;0.079;second;milliseconds
2018-11-02 14:47:20;RetrieveDomainsTimezone;1;0.175;0.175;0.175;0.000;0.175;0.175;0.175;0.175;0.175;0.175;0.001;0.000;0.008;0.069;second;milliseconds

Имя вызванного метода указано в столбце wsdl_action, количество вызовов в столбце count, значения остальных столбцов можно посмотреть в таблице timer. В лог добавляются только те методы, которые реально вызывались. Если команда не используется ни одним из компонентов ядра, то данных (даже нулевых) в этом логе не будет.

Коды возврата для каждого метода wsdl (executeCode.csv).

Используя этот лог, можно

  • узнать какие методы в принципе возвращают ошибки;

  • отношение числа ошибок к числу успешных выполнений.

t;wsdl_action;code;count;mean_rate;m1_rate;m5_rate;m15_rate;rate_unit
2018-11-02 14:54:20;GetClientInfo;SUCCESS;1;0.001;0.000;0.002;0.043;second
2018-11-02 14:54:20;GetFullDomainsChanged;SUCCESS;1;0.001;0.000;0.002;0.043;second
2018-11-02 14:54:20;GetVersion;SUCCESS;19;0.014;0.000;0.003;0.050;second
2018-11-02 14:54:20;RetrieveDomainsTimezone;SUCCESS;1;0.001;0.000;0.002;0.043;second

Имя вызванного метода указано в столбце wsdl_action, результаты вызова в столбце code, количество вызовов с одинаковым результатом в столбце count, значения остальных столбцов можно посмотреть в таблице meter.

Статистика по клиентам и вызываемым ими методам (clientsActions.csv).

Используя этот лог, можно

  • узнать, какой из клиентов NBI (серверов в сети ядра) какие методы вызывает;

  • узнать по каждому методу возвращаемые ошибки;

  • отношение числа ошибок к числу успешных выполнений.

t;client_ip;wsdl_action;code;count;mean_rate;m1_rate;m5_rate;m15_rate;rate_unit
2020-06-22 14:17:22;127.0.0.1;CreateDomainCommander;ILLEGAL_DOMAIN;1;0.001;0.000;0.011;0.076;second
2020-06-22 14:17:22;127.0.0.1;GetAdminAuthUserEmails;SUCCESS;1;0.001;0.000;0.011;0.076;second
2020-06-22 14:17:22;127.0.0.1;GetClientInfoCommander;SUCCESS;6;0.007;0.000;0.012;0.078;second
2020-06-22 14:17:22;127.0.0.1;GetFullDomainsChangedCmd;SUCCESS;1;0.001;0.000;0.011;0.076;second
2020-06-22 14:17:22;127.0.0.1;RetrieveDomainsTimezoneCommander;SUCCESS;1;0.001;0.000;0.011;0.076;second

IP клиента указано в столбце client_ip, имя вызванного метода в столбце wsdl_action, результаты вызова в столбце code, количество вызовов с одинаковым результатом в столбце count, значения остальных столбцов можно посмотреть в таблице meter.

Вернуться к списку команд
Версия 1.24-2769
Дата публикации 18-10-2022 03:26:05