Отчеты. Смотреть статистику CDN в Grafana с помощью плагина cdn-stats от EdgeЦентр

Последние изменения: 13.02.2023

О плагине
Скачать и установить плагин

Настроить дашборд


Смотрите и анализируйте статистику CDN-ресурсов в Grafana с помощью плагина cdn-stats от EdgeЦентр.

О плагине

Плагин cdn-stats передаёт статистику от нашего CDN API и отображает её на ваших дашбордах в Grafana.

12675d52da8892c59301f2c344293f3a.png

Какая статистика доступна:

  • 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 версии 9.3.2.

1. Установите Grafana.

2. Скачайте файл ec-cdn-stats-datasource-1.0.15.zip с последней версией плагина в GitHub.

Обратите внимание. Цифры в названии файла (1.0.15) означают версию плагина и могут меняться в зависимости от обновлений.

3fd3a8fe4cd71539be6aea3805e7c9cb.png

3. Распакуйте содержимое архива в папку плагинов Grafana. По умолчанию это папка установки GrafanaLabs\grafana\plugins-bundled\internal.

4. Перезапустите и авторизуйтесь в Grafana.

5. Наведите курсор на иконку шестерёнки в меню слева — раскроются пункты раздела Configuration. Выберите пункт Data Sources.

f6e2e6b41db38bfa67bf553988301a3f.png

6. Нажмите Add data source, чтобы добавить новый ресурс для загрузки данных. В этом меню добавляются плагины.

417552a78c7ecca27f81ac73388acdc5.png

7. Найдите плагин cdn-stats от EdgeЦентр и нажмите на него.

93e01589038b6e8a6f2dd63011ee31a6.png

Откроются настройки плагина.

b3199548a5ecc6ccdd240d43ad2e230e.png

8. В разделе HTTP введите данные:

Чтобы получить API-токен, перейдите в личный кабинет в раздел ПрофильAPI-токены → нажмите Создать токен.

9b92ae08e5fe0f7b7ed1470835acf5a4.png

Вставьте полученный API-токен в поле API key.

9. Включите переключатель Default и нажмите Save & test.

Если всё сделано правильно, отобразятся сообщения Datasource updated и You successfully authenticated as {Имя}:

1fe748a5438ebe8e0220e2a7299d964e.png

Если введены неверные данные, появится ошибка:

18a9ca138423593990d4a28a77dc07f2.png

В таком случае проверьте данные и введите корректные значения.

Настроить дашборд

Чтобы статистика CDN отображалась в Grafana, нужно настроить дашборд — на нём вы сможете следить за графиками.

1.Наведите курсор на иконку с четырьмя квадратами в меню слева — раскроются опции раздела Dashboards. Нажмите на + New dashboard, чтобы добавить дашборд.

18e9258cdbe121e0d903af79495cc36d.png

2. В открывшемся окне нажмите Add a new panel для создания панели дашборда.

22f350f8691b540c56efd51c5de127c3.png

Откроются настройки панели.

56693dd02144de68eb34c084e5c16bdd.png

3. Убедитесь, что в разделе Query в нижней части страницы установлен плагин cdn-stats в качестве источника данных панели.

4. Выберите необходимые метрику (Metric), гранулярность (Granularity) и группировку (Group by). Вы можете выбрать несколько переменных для поля группировки. Данные сразу отобразятся на панели.

5. (опционально) Если вы хотите отобразить на панели ещё один график с другими данными, нажмите на кнопку + Query — появится дополнительный раздел Query. Добавьте необходимые переменные.

6. (опционально) Измените названия графиков в легенде панели. По умолчанию в названиях графиков передаются переменные полей Metric и Group by (напр., Total Traffic {resource”…”’):

da1ed69c3d48bdf13b53a0cf9733e036.png

Чтобы изменить название графика, впишите его в поле Legend, указав в скобках {{}} переменную из поля Group by.

Например, вместо Total Traffic {resource”…”’} введите Ресурс {{resource}} или только {{resource}}. Так, в легенде отобразятся новые названия графиков.

169f3bac8e3cd4eed55cab7ca831f424.png

7. (опционально) Для удобства вы можете изменить цвета графиков. Для этого нажмите на цвет графика в легенде и выберите новый цвет.

fc27da37a1806eb5dcbbd3b171970289.png

Grafana имеет множество других настроек кастомизации панели. Подробности в документации Grafana.

8. Добавьте возможность фильтрации данных. Для этого нажмите на кнопку Apply. В правом верхнем углу открывшейся страницы нажмите на иконку шестерёнки. 

d938289156c43f63066220a9cfe9a057.png
02f2887f75f61e4ecb96417a876f306e.png

9. Перейдите в раздел Variables и нажмите Add variable, чтобы добавить переменную. 

61655ca5be58ce83ff90094e4c582d6c.png

Например, чтобы добавить фильтр по ресурсам, задайте значения для полей:

  • Name — название переменной на латинице (обязательно)

  • Values for — значение для переменной: resourceID (ID ресурса), vhost (персональный домен ресурса), client (ID клиента), country (страна), region (регион) (обязательно)

  • Sort — порядок сортировки (опционально)

  • Selection Options — вид выделения элементов (опционально)
    🞐 Multi-value — выбор нескольких элементов
    🞐 Include All option — выбор всех элементов, значение All

23de61d0d3c887af2897193a8561800f.png
c84bae6ca4d884628c7e6ce0246fb938.png

10. Нажмите на кнопку Apply, чтобы сохранить изменения.

11. Привяжите переменную к панели. Для этого вернитесь к панели, нажав на стрелку в левом верхнем углу страницы.

60fa03d56c4438804f820565775e55b1.png

Перейдите к настройкам панели, нажав на название панели → Edit.

ec80020508e9d08fc1d51355daa4db16.png

12. В разделе QueryFilters введите название созданной переменной через $ в соответствующем поле. Например, если вы создали переменную с названием Resources для отображения графиков ресурсов, введите название переменной $Resources в поле Resources.

5774bd10933b5d2b5b6c53a1b0594e11.png

13. Нажмите на кнопку Apply.

Готово. Фильтр появился в левом верхнем углу страницы. Теперь можно выбрать, данные каких ресурсов отобразятся на панели.

227ebf8b68cc892aef3c810db628ac21.png

14. Сохраните дашборд. Для этого нажмите на иконку дискеты → Save.

adcf155f14d7f65991d0afb6a62550db.png
efa3a5af02a859e4f68fabde6ec17797.png

В том же окне можно переименовать дашборд и переместить его в другую папку.

Помогла ли вам статья?