Перейти к содержимому

Обзор ​

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 отбрасываются и исключения, в стеке которых нет адреса вовсе.