Кабинет
Уведомления и сводка
Что показывают «Обзор» и колокольчик, из чего считаются цифры и чего в уведомлениях пока нет.
На этой странице · 3
«Обзор» — первый экран кабинета: сколько запросов прошло за сутки, какая доля ошибок, что случилось последним и какие сервисы сколько методов отдают. Все цифры считаются по журналу запросов и по каталогу в момент запроса; в вёрстку не зашито ни одно число.
Сводка
GET /api/overview собирает четыре блока.
Что в ответе
{
"requests24h": 929,
"requestsGrowthPercent": 91.94214876033058,
"avgLatencyMs": 227,
"errorRatePercent": 3.4445640473627552,
"activeKeys": 8
}
Как читать эти цифры:
- Рост считается к предыдущим суткам — окну «от 48 до 24 часов назад». Если тогда
запросов не было, поле равно
null, а не нулю: делить не на что, и рисовать «+100 %» было бы враньём. - Доля ошибок — запросы с кодом 400 и выше от всех запросов за сутки.
- Активные ключи — все, кроме отозванных. Ключ со статусом «истекает» продолжает работать и считается активным.
- Число методов и дата снимка берутся из каталога, который живёт в памяти движка;
в базу за ними не ходят. Сервис без методов получает статус
planned.
Ещё два эндпоинта того же экрана: GET /api/search ищет метод сразу по трём
демо-API (совпадение в пути ценнее, чем в описании), а GET /api/search/preview/:id
показывает предполагаемый обмен — запрос и ответ — не уходя с экрана и не записывая
ничего в журнал.
Счётчики сайдбара
GET /api/auth/me возвращает шесть счётчиков одним заходом — сайдбар рисуется
на каждом экране, и делать ради него пять последовательных запросов к базе значило
бы платить их задержками при каждом переходе.
{
"usage": {"requestsThisMonth": 1416, "hasLimits": false},
"counts": {"requestsToday": 42, "keys": 10, "mocks": 13, "webhooks": 7, "alerts": 3, "catalogMethods": 2421}
}
requestsThisMonth — это запросы за последние 30 дней, а не за календарный месяц.
hasLimits: false — не заглушка: лимитов на количество ключей и запросов
у продукта нет.
Блок «Первые шаги» тоже считается по данным: шаг «Создайте ключ» отмечен, когда ключей больше нуля, «Сделайте первый запрос» — когда есть запросы за 30 дней, и так далее. Когда пройдены все четыре, блок исчезает.
Уведомления
Колокольчик в шапке открывает GET /api/alerts — двадцать свежих записей.
У каждой пять полей: важность (info, warning, danger), заголовок, вторая
строка meta, имя иконки и ссылка на экран кабинета, где это чинится. Например,
уведомление об ошибках 500 у Ozon ведёт на /logs?status=500 — журнал открывается
сразу с этим фильтром.
Точка на колокольчике означает ровно «уведомления есть», а не «есть непрочитанные»: прочитанность в кабинете не показывается и пометить уведомление прочитанным из интерфейса нельзя.
Уведомления пока не появляются сами
В коде нет ни одного места, которое создаёт уведомление в рантайме: истёкший ключ, серия неудачных доставок вебхука или всплеск ошибок сейчас уведомление не заводят. Все записи, которые вы видите в демо-песочнице, кладёт сид демо-данных. Правил, по которым уведомление появляется, в продукте ещё нет — читайте панель как витрину формата, а не как работающий мониторинг.
Пока это так, следить за ошибками стоит по журналу: фильтр «Код ответа» → 5xx
за нужный период, а не по колокольчику.