Мониторинг ошибок в Sentry
Sentry - удобный инструмент мониторинга ошибок на вашем проекте. Но что делать, чтобы мониторить только то что вам надо?
Много кто использует на проектах такой удобный инструмент мониторинга как Sentry. Он позволяет просматривать где именно произошла ошибка. Кто и как отправлял запросы и тд.
По умолчанию Sentry отлавливает все исключения и отправляет все это в сервис мониторинга. Но это бывает иногда слишком избыточно. Так как например все запросы от ботов будут генерировать исключения что страница не найдена. А бесплатная версия имеет ограничение на количество записей в месяц. Поэтому логично будет эти исключения игнорировать.
Чтобы настроить что именно надо мониторить, можно установить игнорирование некоторых исключений или тегов. Ниже будет приведен пример как это можно сделать для проекта написанного на Symfony. Для этого необходимо в конфигурации сервисов (config/packages/sentry.yaml) и (config/services.yaml) прописать следующее:
sentry:
options:
integrations:
- 'Sentry\Integration\IgnoreErrorsIntegration'
services:
Sentry\Integration\IgnoreErrorsIntegration:
arguments:
$options:
ignore_exceptions:
- Symfony\Component\HttpKernel\Exception\NotFoundHttpException
- Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException
- Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException
ignore_tags:
- [client_os.name, Windows]
Кроме исключений фреймворка можно указать и свои кастомные исключения. Ограничений нет. Также можно посмотреть какие теги попадают в мониторинг и при необходимости их игнорировать.test_domains (Выкатывать обычные домены)