Обзор
inboundFiltersIntegration отбрасывает ненужные вам исключения ещё в браузере, до отправки, — так что они не доходят до Buglapse и не расходуют квоту. Типичный шум: ошибки расширений браузера, сторонних виджетов или непрозрачный Script error. от скриптов с другого домена.
Она фильтрует только исключения, по двум признакам:
- сообщение ошибки —
ignoreErrors; - адрес скрипта, бросившего ошибку, из верхнего кадра стека, —
allowUrlsиdenyUrls.
Строковый шаблон совпадает, если значение его содержит; RegExp проверяется на значении.
С script-тегом интеграция включается и настраивается в Настройки → Скрипт загрузчика → Входящие фильтры. Что ещё можно отфильтровать — на странице Фильтрация шума.
Использование
ts
import { use } from '@buglapse/browser'
import { inboundFiltersIntegration } from '@buglapse/browser/integrations'
use(inboundFiltersIntegration({
ignoreErrors: ['Script error.', /ResizeObserver loop/],
allowUrls: ['https://app.example.com'],
denyUrls: [/^chrome-extension:\/\//, /^moz-extension:\/\//],
}))Опции
| Опция | Тип | По умолчанию | Описание |
|---|---|---|---|
ignoreErrors | (string | RegExp)[] | ['Script error.'] | Отбрасывать исключения, сообщение которых совпадает с любым шаблоном |
allowUrls | (string | RegExp)[] | [] | Если задано, оставлять только исключения из скриптов с подходящим адресом |
denyUrls | (string | RegExp)[] | [] | Отбрасывать исключения из скриптов с подходящим адресом |
Переданный ignoreErrors заменяет список по умолчанию — добавьте 'Script error.' сами, если по-прежнему хотите его фильтровать. С заданным allowUrls отбрасываются и исключения, в стеке которых нет адреса вовсе.