Ошибки
Qubix записывает ошибки, которые возникают на страницах вашей витрины PWA, когда их открывают посетители, — не отработавший скрипт, не загрузившаяся иконка и тому подобное. Сбор этих ошибок помогает заметить сломанное приложение до того, как оно потратит трафик впустую.
Отдельная вкладка Ошибки внутри карточки приложения — со списком ошибок, где одинаковые сгруппированы и показан счётчик повторов, — запланирована, но пока не сделана. Сейчас ошибки доступны только через запрос к базе — он описан ниже. В интерфейсе они пока не показываются.
Где хранятся ошибки
Ошибки собираются в одну таблицу — pwa_errors. Каждая строка — это одна ошибка, сработавшая на странице витрины; строки хранятся 90 дней. Поля, которые понадобятся чаще всего:
| Поле | Что содержит |
|---|---|
type | Вид ошибки — например, ошибка скрипта или не загрузившийся ресурс. |
message | Текст ошибки. |
event_time | Когда ошибка произошла. |
geo | Страна посетителя. |
device | Описание устройства посетителя. |
Для более глубокого разбора есть и другие колонки: domain (точка входа, через которую пришёл посетитель), piuid (идентификатор посетителя), ip, ua (строка браузера, user-agent), stack (технический след ошибки) и context (дополнительные подробности о том, где она сработала).
Как их посмотреть
Проще всего — спросить встроенного ИИ-помощника, панель которого доступна на каждом экране админки. Он умеет выполнять запросы к базе только на чтение, поэтому обычная просьба вроде «покажи ошибки этой PWA за последние сутки» вернёт список без единой строчки запроса с вашей стороны. См. Чат ИИ-аналитика.
Тот же метод запроса на чтение доступен и внешнему клиенту по MCP (см. MCP/API), а для администратора с прямым доступом к базе — как обычный запрос. Каким бы путём вы ни пользовались, вы всегда видите ошибки только тех приложений, которые вам разрешено видеть: байер — свои приложения, администратор — все.
Как узнать идентификатор приложения
Для запросов ниже нужен идентификатор приложения. Откройте карточку приложения и скопируйте идентификатор из адресной строки: карточка открывается по адресу вида .../#/pwa/APP_ID, где APP_ID — значение вроде 01f77c11-ed56-4555-857e-46f380593d5d.
Пример: недавние ошибки одного приложения
SELECT event_time, type, message, geo, device, domain
FROM pwa_errors
WHERE pwa_id = 'APP_ID'
AND event_time > now() - INTERVAL 24 HOUR
ORDER BY event_time DESC
Пример: те же ошибки с группировкой и счётчиком повторов
Так будет выглядеть и будущая вкладка — одинаковые ошибки сведены вместе, с числом повторов и временем последнего появления:
SELECT type, message, count() AS hits, max(event_time) AS last_seen
FROM pwa_errors
WHERE pwa_id = 'APP_ID'
AND event_time > now() - INTERVAL 7 DAY
GROUP BY type, message
ORDER BY hits DESC