Панель мониторинга
Панель мониторинга — стартовая страница веб-интерфейса ONS. На ней видно, сколько устройств выходит на связь, насколько загружен эфир у шлюзов, доходят ли кадры downlink и какого качества сигнал. Ниже описано, откуда берётся каждая цифра и при каких порогах меняется цвет: без этого карточки легко прочитать неверно.
Где находится панель и кому она доступна
- Адрес панели —
/dashboard. Пустой адрес и любой неизвестный путь перенаправляют на неё. - В боковом меню панель — первый пункт: «Панель устройств» в русском интерфейсе, Dashboard — в английском.
- Панель видна пользователю, у которого есть хотя бы одна из ролей
staff,adminилиmonitoring. Роли — это имена групп пользователя на сервере; кроме того, суперпользователь получает рольsuperuser, а пользователь с признаком staff — рольstaff. - Без нужной роли пункт меню скрыт, а при переходе по адресу открывается страница входа
/login.
Блоки идут сверху вниз в таком порядке:
| Блок | Что показывает | Кому виден |
|---|---|---|
| «Активность узлов» | Сколько устройств выходило на связь за последние 24, 48 и 72 часа | Всем, кому доступна панель |
| «Здоровье сети» | Загрузку эфира у шлюзов, доставку downlink, трафик по операторам | Всем, кому доступна панель |
| «Очереди» | Внутренние очереди сервера: число сообщений и потребителей | Только суперпользователю |
| «Состояние сети» | Графики сигнала и трафика за выбранные даты | Всем, кому доступна панель |
- Панель устройств — пункт бокового меню, открывает панель
/dashboard. - Активность узлов — круговая диаграмма: «Всего» и четыре группы устройств по времени последнего пакета.
- Кнопка обновления — заново запрашивает данные блока «Активность узлов».
- 1h, 6h, 24h, 7d — период блока «Здоровье сети», по умолчанию 24h.
- Карточки — «Активные шлюзы», «Confirmed Uplink», «Проблемные шлюзы», «DL доставлено», «Общий airtime».
- Распределение SF — доли uplink-эфира на SF7…SF12.
- Свой / Чужой трафик — эфир своих и чужих устройств; сектора подписаны Own и Foreign.
- Доставка Downlink (1ч) — кадры downlink по статусам за выбранный период.
Активность узлов
Круговая диаграмма с общим числом устройств («Всего») и кнопкой обновления. Устройства делятся на четыре группы по времени последнего пакета:
| Группа | Последний пакет | Цвет |
|---|---|---|
| «Активные за сегодня» | Меньше 24 часов назад | Зелёный |
| «Нет связи более 24 часов» | От 24 до 48 часов назад | Жёлтый |
| «Нет связи более 48 часов» | От 48 до 72 часов назад | Оранжевый |
| «Не было связи» | Больше 72 часов назад или ни разу | Красный |
Учитываются только активные устройства (признак active); multicast-группы в подсчёт не входят. Пользователь видит устройства, на которые ему выдано право просмотра, и устройства своих приложений. Суперпользователь видит все активные устройства.
Здоровье сети: период и источник данных
Период задаётся кнопками 1h, 6h, 24h и 7d, по умолчанию — 24h. Выбранный период действует на весь блок: карточки, диаграммы и таблицы. Больше 168 часов (7 суток) сервер не считает: большее значение он сокращает до 168.
Откуда берутся данные:
- Эфир шлюзов — карточки, кроме «DL доставлено», диаграммы «Распределение SF» и «Свой / Чужой трафик», таблица проблемных шлюзов. Источник — почасовые счётчики эфира по каждому шлюзу, хранятся 8 суток.
- Трафик по операторам — такой же почасовой счётчик по каждому шлюзу, но в нём копится число uplink-кадров, а не эфирное время.
- Доставка downlink — карточка «DL доставлено» и диаграмма «Доставка Downlink (1ч)». Источник — кадры downlink за выбранный период, сохранённые сервером.
Шаг счётчиков — один час: в окно попадают часы, начало которых не раньше, чем «сейчас минус выбранный период». Поэтому при периоде 1h в расчёт, как правило, попадает только текущий, ещё не закончившийся час.
В расчёт всего блока входят только активные шлюзы, на которые пользователю выдано право просмотра (view_gateway) именно этого шлюза. Для суперпользователя в расчёт входят все активные шлюзы.
Карточки
| Карточка | Что показывает | Цвет |
|---|---|---|
| «Активные шлюзы» | Число доступных пользователю шлюзов, через которые за период прошёл хотя бы один uplink. Шлюз без uplink за период не считается, даже если он на связи | — |
| «Confirmed Uplink» | Доля эфирного времени подтверждаемых uplink (Confirmed Data Up, MType 4) во всём uplink-эфире доступных шлюзов, % | Больше 15% — красный, больше 5% — жёлтый, иначе зелёный |
| «Проблемные шлюзы» | Число критичных шлюзов и число предупреждений через «/» среди первых 20 проблемных шлюзов — тех же, что в таблице; если есть только один вид проблем — одно число без «/». См. Проблемные шлюзы | Критичные — красным, предупреждения — жёлтым; если проблем нет — зелёный 0 |
| «DL доставлено» | Доля кадров downlink со статусом 3 (Delivered) среди всех кадров за период, % | Больше 75% — зелёный, больше 50% — жёлтый, иначе красный |
| «Общий airtime» | Суммарное эфирное время uplink по доступным шлюзам за период, мс | — |
Диаграммы
Распределение SF
Кольцевая диаграмма «Распределение SF»: доли uplink-эфира на SF7…SF12 по всем доступным шлюзам, в процентах. SF определяется по скорости передачи кадра (DATR); SF7BW250 тоже считается как SF7.
Свой и чужой трафик
Диаграмма «Свой / Чужой трафик» делит эфир на свой и чужой:
- «Свой» — uplink-кадр данных, DevAddr которого в момент приёма есть в памяти сервера. Всё остальное считается чужим, в том числе кадры без DevAddr, например Join Request.
- В памяти сервера бывают и чужие DevAddr: пока сервер ищет устройство в базе и ещё 5 минут после того, как не нашёл его. Поэтому кадры чужого устройства, выходящего на связь чаще раза в 5 минут, могут учитываться как свои, и тогда доля чужого эфира занижена — на этой диаграмме и в столбце Foreign % таблицы проблемных шлюзов.
- Диаграмма считается в браузере и только по 20 шлюзам с наибольшей долей confirmed-эфира, а не по всей сети.
- Эфир каждого шлюза делится по его доле чужого трафика (Foreign %); единица — миллисекунды эфира.
- Сектора подписаны Own и Foreign, без перевода.
Доставка downlink
Диаграмма «Доставка Downlink (1ч)» и карточка «DL доставлено» строятся по кадрам downlink за выбранный период, прошедшим через доступные пользователю шлюзы. Секторов четыре; сектора с нулевым значением скрыты.
| Сектор | Статус кадра | Что значит |
|---|---|---|
| Delivered | 3 | Шлюз ответил подтверждением TX_ACK без ошибки, то есть принял кадр к передаче. Устройство приём не подтверждает |
| TX_ACK Timeout | 7 | Шлюз не подтвердил передачу за 10 секунд |
| Pending | 1 (Sent) | Кадр передан шлюзу, подтверждения ещё нет |
| Late | 2 | Шлюз ответил ошибкой TOO_LATE или ошибкой с неизвестным кодом |
Процент доставки — это Delivered, делённое на все кадры с любым статусом. Поэтому кадры со статусами, которых нет на диаграмме, например Too Early и Collision, тоже снижают процент. Все статусы описаны на странице Отправка данных на устройство.
Трафик по операторам (NwkID)
Таблица «Трафик по операторам (NwkID)» показывает, чьи устройства занимают эфир ваших шлюзов. Она считает число uplink-кадров данных, а не эфирное время. Кадры группируются по NwkID — старшим 7 битам DevAddr. Имя оператора берётся из реестра NetID Type 0: например, 0x13 — The Things Network, 0x21 — Orion M2M. Выводятся первые 15 операторов по числу кадров.
- Строка своей сети — NwkID 0x21, выделена жирным и зелёной точкой.
- Confirmed % — доля подтверждаемых кадров оператора: больше 50 — красный, больше 10 — жёлтый.
- Шлюз — название проблемного шлюза; ссылка ведёт на страницу шлюза.
- Точка — уровень проблемы: красная — критичный, жёлтая — предупреждение.
- Индикатор — точка очереди: зелёная, жёлтая, красная или серая.
- Сообщений — число сообщений в очереди: у одной из очередей их больше 1000, поэтому точка у неё жёлтая.
- обновление каждые 5 сек — панель «Очереди» обновляется каждые 5 секунд.
| Столбец | Что показывает |
|---|---|
| NwkID | Идентификатор сети в шестнадцатеричном виде |
| «Оператор» | Имя оператора из реестра; если NwkID в реестре нет — сам NwkID в шестнадцатеричном виде. Строка своей сети (NwkID 0x21) выделена жирным и зелёной точкой |
| «Пакеты» | Число uplink-кадров данных за период |
| Confirmed % | Доля подтверждаемых кадров: больше 50 — красный, больше 10 — жёлтый |
Проблемные шлюзы
Шлюз считается проблемным, если у него доля confirmed-эфира больше 15% или доля эфира на SF11 и SF12 больше 30%. Проблемный шлюз критичный, если confirmed больше 50% или SF11+SF12 больше 60%; остальные проблемные шлюзы — предупреждения.
Таблица «Проблемные шлюзы» выводит не больше 20 строк, отсортированных по Confirmed % по убыванию. Если проблемных шлюзов нет, вместо таблицы выводится зелёная плашка «Проблем с перегрузкой не обнаружено».
| Столбец | Что показывает | Цвет ячейки |
|---|---|---|
| «Шлюз» | Название шлюза; если оно не задано — описание, а если нет и описания — EUI. Ссылка ведёт на страницу шлюза /gateways/<EUI> | — |
| Confirmed % | Доля confirmed-эфира шлюза | Больше 50 — красный, больше 25 — жёлтый |
| Foreign % | Доля чужого эфира | Больше 50 — красный, больше 20 — жёлтый |
| SF11+12 % | Доля эфира на SF11 и SF12 | Больше 60 — красный, больше 40 — жёлтый |
| Airtime | Эфирное время uplink шлюза за период, мс | — |
| Точка | Уровень проблемы | Красная — критичный, жёлтая — предупреждение |
Очереди
Панель «Очереди» видна только суперпользователю: интерфейс скрывает её от остальных, а сервер отвечает на её запрос только суперпользователю. Панель обновляется каждые 5 секунд и показывает внутренние очереди сервера: число сообщений и потребителей.
Столбцы — индикатор, «Очередь», «Сообщений», «Потребителей».
| Индикатор | Когда |
|---|---|
| Зелёная точка | 1000 сообщений в очереди и меньше |
| Жёлтая точка (warning) | От 1001 до 10 000 сообщений |
| Красная точка (critical) | Больше 10 000 сообщений |
| Серая точка и «— err —» вместо числа | Не удалось получить данные очереди; текст ошибки — во всплывающей подсказке |
Число в столбце «Потребителей», равное 0, выделяется красным.
Состояние сети
Блок «Состояние сети» строит графики за диапазон дат:
- По умолчанию диапазон — с даты неделю назад по сегодняшний день включительно. Если навести указатель на поле дат, появится подсказка «Время указывается в UTC»; рядом с полем — кнопка, которая обновляет все графики.
- Конец диапазона в календаре можно выбрать не дальше 30 дней от начала. Диапазон от 32 дней сервер отклоняет с ошибкой «Date period must be no more than one month».
- Дата окончания входит в диапазон целиком.
- Поле дат — диапазон графиков, по умолчанию с даты неделю назад по сегодняшний день; подсказка — «Время указывается в UTC».
- Кнопка обновления — обновляет все графики.
- Индикатор уровня сигнала (RSSI) — гистограмма: по оси X частоты приёма, внутри столбца — число кадров по диапазонам RSSI.
- Отношение сигнал - шум (LSNR) — гистограмма: то же для LSNR.
- Индикатор уровня сигнала - Отношение сигнал - шум (RSSI - LSNR) — RSSI и LSNR по времени.
В графики попадают только uplink-кадры данных (Unconfirmed и Confirmed Data Up) с указанной частотой приёма от активных устройств; кадры Join и downlink не входят. Суперпользователь видит все данные. Остальные пользователи видят кадры, принятые доступными им шлюзами (право view_gateway), и кадры устройств своих приложений.
| График | Что показывает |
|---|---|
| «Индикатор уровня сигнала (RSSI)», гистограмма | По оси X — частоты приёма; внутри столбца — число кадров по диапазонам RSSI с шагом 10 дБ, от −150 до −10 дБм |
| «Отношение сигнал - шум (LSNR)», гистограмма | То же для LSNR: диапазоны с шагом 2 дБ, от −26 до +26 дБ |
| «Индикатор уровня сигнала - Отношение сигнал - шум (RSSI - LSNR)» | RSSI и LSNR по времени |
| «Индикатор уровня сигнала (RSSI)», пузырьковый | RSSI каждого кадра |
| «Отношение сигнал - шум (LSNR)», пузырьковый | LSNR каждого кадра |
| «Фактор распространения», пузырьковый | SF кадра, вычисленный из DR: DR0 — SF12, DR1 — SF11, DR2 — SF10, DR3 — SF9, DR4 — SF8, DR5 и DR6 — SF7. Ось подписана DATR |
| «Частоты приема» | Кольцевая диаграмма: сколько кадров принято на каждой частоте |
| «Процент потерь», пузырьковый | Процент потерь (packet_loss_rate) каждого кадра |
| «История трафика» | Линейный график числа uplink-кадров данных; кнопки «По дням» (по умолчанию) и «По часам» |
- Индикатор уровня сигнала (RSSI) — пузырьковый график: RSSI каждого кадра, серии по частотам.
- Отношение сигнал - шум (LSNR) — пузырьковый график: LSNR каждого кадра.
- Фактор распространения — SF кадра, вычисленный из DR; ось подписана DATR.
- Частоты приема — сколько кадров принято на каждой частоте.
- Процент потерь — процент потерь каждого кадра.
- История трафика — число uplink-кадров данных.
- По дням и По часам — шаг графика «История трафика», по умолчанию «По дням».
Пузырьковые графики и график RSSI - LSNR берут только последние 250 кадров выбранного диапазона. На пузырьковых графиках серии разбиты по частотам, а RSSI и LSNR — лучшие значения среди шлюзов, принявших кадр. На графике RSSI - LSNR две серии, rssi и lsnr, со значениями из записи кадра.
Гистограммы RSSI и LSNR, «Частоты приема» и «История трафика» загружаются, только когда попадают в видимую часть окна, то есть по мере прокрутки страницы. График RSSI - LSNR и пузырьковые графики загружаются одним запросом сразу при открытии панели. Если данных нет, вместо графика выводится «Нет данных».
Что важно знать
- «Активные шлюзы» — не число шлюзов на связи, а число доступных вам шлюзов, через которые за период прошёл uplink.
- «Здоровье сети» учитывает только права на конкретные шлюзы. Право на просмотр всех шлюзов, выданное глобально, здесь не действует; суперпользователь видит все активные шлюзы.
- Счётчики эфира и кадров ведутся по каждому шлюзу отдельно, а карточки и таблицы складывают их по шлюзам. Кадр, принятый несколькими шлюзами, учитывается у каждого из них.
- В подписи «Доставка Downlink (1ч)» стоит «(1ч)», но диаграмма строится за период, выбранный кнопками блока: это расхождение в интерфейсе.
- Delivered значит, что шлюз принял кадр к передаче. Принял ли его устройство, по этому статусу не видно.
- «Свой / Чужой трафик» считается только по 20 шлюзам с наибольшей долей confirmed-эфира, а не по всей сети.
- При периоде 1h всё, что считается по почасовым счётчикам (карточки, кроме «DL доставлено», диаграммы «Распределение SF» и «Свой / Чужой трафик», обе таблицы), показывает, как правило, только текущий незаконченный час; «DL доставлено» и «Доставка Downlink (1ч)» — ровно последние 60 минут.
См. также
- Отправка данных на устройство — статусы кадра downlink и что делать, если кадр не дошёл.
- Получить историю кадров downlink — кадры downlink за период вместе со статусами.
- Термины и определения — что такое DevAddr и NwkID.
- Частотные планы — частоты uplink и downlink по планам.