CDN
Отчёты. Смотреть статистику CDN в Grafana с помощью плагина cdn-stats от EdgeЦентр
Смотрите и анализируйте статистику CDN-ресурсов в Grafana с помощью плагина cdn-stats от EdgeЦентр.
О плагине
Плагин cdn-stats передаёт статистику от нашего CDN API и отображает её на ваших дашбордах в Grafana.
Какая статистика доступна:
-
Bandwidth — ширина полосы. Вычисляется на основании суммы трафика от источника до CDN-серверов или шилдинга источника, трафика от шилдинга источника до CDN-серверов и трафика от CDN-серверов до конечных пользователей.
-
Total Traffic — общий объём трафика. Суммируется трафик от источника до CDN-серверов или шилдинга источника, трафик от шилдинга источника до CDN-серверов и трафик от CDN-серверов до конечных пользователей.
-
Origin Traffic — трафик от источника. Отображается трафик от источника до CDN-серверов или шилдинга источника.
-
Edges Traffic — трафик от CDN-серверов. Отображается сумма трафика от шилдинга источника до CDN-серверов и трафика от CDN-серверов до конечных пользователей.
-
Shield Traffic — трафик от шилдинга источника. Отображается трафик от шилдинга источника до CDN-серверов.
-
Total Requests — общее количество запросов к CDN-серверам. Отображается сумма запросов конечных пользователей к CDN-серверам.
-
WAF requests — количество запросов, которые обработал Базовый WAF.
-
2xx, 3xx, 4xx, 5xx Responses — количество 2xx, 3xx, 4xx и 5xx кодов ответов от CDN-серверов.
-
Image optimization — количество изображений, преобразованных с помощью Image Stack.
-
Cache Hit Ratio — доля кешированного контента. Вычисляется по формуле: трафик, отданный из кеша CDN-серверов (с HTTP-заголовком Cache: HIT), разделить на количество запросов конечных пользователей.
-
Byte cache Hit Ratio — доля кешированного трафика. Вычисляется по формуле: один минус трафик от источника до CDN-серверов или шилдинга источника разделить на трафик от CDN-серверов до конечных пользователей.
-
Shield traffic ratio — эффективность шилдинга источника: на сколько больше трафика отправляется с шилдинга, в сравнении с трафиком с источника. Вычисляется по формуле: (трафик от шилдинга источника до CDN-серверов минус трафик от источника до шилдинга источника) разделить на трафик от шилдинга источника до CDN.
По каким параметрам группируется статистика:
-
Client — по ID клиента
-
Vhost — по персональному домену CDN-ресурса
-
Resource — по ID CDN-ресурсов
-
Region — по регионам
-
Country — по странам
-
Datacenter — по дата-центрам
По каким временным отрезкам (гранулярности) отображается статистика:
-
5 минут
-
15 минут
-
1 час
-
1 день
Важно. Плагин предназначен для Grafana версии 7.0 и выше.
Чтобы получать статистику CDN в Grafana, нужно:
-
Установить Grafana версии 7.0 и выше.
Скачать и установить плагин
В этой статье дана инструкция на основе Grafana версии 9.3.2.
2. Скачайте файл ec-cdn-stats-datasource-1.0.15.zip с последней версией плагина в GitHub.
Обратите внимание. Цифры в названии файла (1.0.15) означают версию плагина и могут меняться в зависимости от обновлений.
3. Распакуйте содержимое архива в папку плагинов Grafana. По умолчанию это папка установки GrafanaLabs\grafana\plugins-bundled\internal.
4. Перезапустите и авторизуйтесь в Grafana.
5. Наведите курсор на иконку шестерёнки в меню слева — раскроются пункты раздела Configuration. Выберите пункт Data Sources.
6. Нажмите Add data source, чтобы добавить новый ресурс для загрузки данных. В этом меню добавляются плагины.
7. Найдите плагин cdn-stats от EdgeЦентр и нажмите на него.
Откроются настройки плагина.
8. В разделе HTTP введите данные:
-
URL: api.edgecenter.ru
-
API key: перманентный API-токен вашего аккаунта.
Чтобы получить API-токен, перейдите в личный кабинет в раздел Профиль → Настройки аккаунта → API-токены → нажмите Создать токен.
Вставьте полученный API-токен в поле API key.
9. Включите переключатель Default и нажмите Save & test.
Если всё сделано правильно, отобразятся сообщения Datasource updated и You successfully authenticated as {Имя}:
Если введены неверные данные, появится ошибка:
В таком случае проверьте данные и введите корректные значения.
Настроить дашборд
Чтобы статистика CDN отображалась в Grafana, нужно настроить дашборд — на нём вы сможете следить за графиками.
1. Наведите курсор на иконку с четырьмя квадратами в меню слева — раскроются опции раздела Dashboards. Нажмите на + New dashboard, чтобы добавить дашборд.
2. В открывшемся окне нажмите Add a new panel для создания панели дашборда.
Откроются настройки панели.
3. Убедитесь, что в разделе Query в нижней части страницы установлен плагин cdn-stats в качестве источника данных панели.
4. Выберите необходимую метрику (Metric), гранулярность (Granularity) и группировку (Group by). Вы можете выбрать несколько переменных для поля группировки. Данные сразу отобразятся на панели.
5. (опционально) Если вы хотите отобразить на панели ещё один график с другими данными, нажмите на кнопку + Query — появится дополнительный раздел Query. Добавьте необходимые переменные.
6. (опционально) Измените названия графиков в легенде панели. По умолчанию в названиях графиков передаются переменные полей Metric и Group by (напр., Total Traffic {resource”…”’}):
Чтобы изменить название графика, впишите его в поле Legend, указав в скобках {{ }} переменную из поля Group by.
Например, вместо Total Traffic {resource”…”’} введите Ресурс {{resource}} или только {{resource}}. Так, в легенде отобразятся новые названия графиков.
7. (опционально) Для удобства вы можете изменить цвета графиков. Для этого нажмите на цвет графика в легенде и выберите новый цвет.
Grafana имеет множество других настроек кастомизации панели. Подробности в документации Grafana.
8. Добавьте возможность фильтрации данных. Для этого нажмите на кнопку Apply. В правом верхнем углу открывшейся страницы нажмите на иконку шестерёнки.
9. Перейдите в раздел Variables и нажмите Add variable, чтобы добавить переменную.
Например, чтобы добавить фильтр по ресурсам, задайте значения для полей:
-
Name — название переменной на латинице (обязательно)
-
Values for — значение для переменной: resourceID (ID ресурса), vhost (персональный домен ресурса), client (ID клиента), country (страна), region (регион) (обязательно)
-
Sort — порядок сортировки (опционально)
-
Selection Options — вид выделения элементов (опционально):
-
-
Multi-value — выбор нескольких элементов
-
Include All option — выбор всех элементов, значение All
-
-
10. Нажмите на кнопку Apply, чтобы сохранить изменения.
11. Привяжите переменную к панели. Для этого вернитесь к панели, нажав на стрелку в левом верхнем углу страницы.
Перейдите к настройкам панели, нажав на название панели → Edit.
12. В разделе Query → Filters введите название созданной переменной через $ в соответствующем поле. Например, если вы создали переменную с названием Resources для отображения графиков ресурсов, введите название переменной $Resources в поле Resources.
13. Нажмите на кнопку Apply.
Готово. Фильтр появился в левом верхнем углу страницы. Теперь можно выбрать, данные каких ресурсов отобразятся на панели.
14. Сохраните дашборд. Для этого нажмите на иконку дискеты → Save.
В том же окне можно переименовать дашборд и переместить его в другую папку.