Breadcrumbs
Breadcrumbs — хронологический след действий и событий до ошибки. Они прикрепляются к ивенту в Хоуке и помогают понять что происходило перед падением: HTTP-запросы, навигация в SPA, клики, свои шаги в коде.
- Контекст сценария: стек показывает место ошибки, breadcrumbs — путь пользователя и приложения к этой точке.
- Меньше ручной работы: запросы, переходы и клики в браузере можно собирать автоматически.
- Бизнес-логика: через add() фиксировать этапы сценария там, где автоматика не подходит.
Отключить полностью:
Параметры breadcrumbs в init:
| Параметр | Назначение |
maxBreadcrumbs
|
Лимит буфера (по умолчанию 15). |
beforeBreadcrumb
|
Хук перед сохранением записи. |
trackFetch
|
Автосбор fetch и XHR (по умолчанию true). |
trackNavigation
|
Автосбор навигации (History API, popstate; по умолчанию true). |
trackClicks
|
Автосбор кликов по UI (по умолчанию true). |
beforeBreadcrumb
Вызывается перед попаданием записи в буфер. Вторым аргументом приходит hint — контекст источника (например, данные запроса/ответа для fetch, DOM-событие для клика).
вернуть breadcrumb (можно изменённый) — запись сохранится в таком виде;
вернуть false — запись не сохраняется;
иной результат — поведение зависит от версии SDK (часто сохраняется исходная запись с предупреждением в консоль); ориентируйтесь на контракт в документации пакета.
hawk.breadcrumbs.add(/* … */);- добавляет одну запись в буфер цепочки (с учётом beforeBreadcrumb, санитизации и лимита FIFO).
hawk.breadcrumbs.get();- возвращает копию всех записей в буфере, от старых к новым.
hawk.breadcrumbs.clear();- очищает буфер цепочки в памяти страницы.
По умолчанию хранится до 15 записей (FIFO): при переполнении удаляются самые старые. После отправки события буфер сам не очищается — при необходимости вызывайте clear().
Автосбор покрывает сеть, навигацию и клики. Остальное (шаги сценария, ветвления, важные состояния) добавляйте сами:
Цепочка breadcrumbs отображается в карточке события вместе с ошибкой — так вы связываете стек с тем, что пользователь делал до падения.