Ответ
Sentry — это платформа для мониторинга ошибок (error monitoring) и производительности (APM) в реальном времени. Она помогает разработчикам обнаруживать, диагностировать и устранять проблемы в production-среде.
Ключевые функции:
- Автоматический сбор ошибок: Sentry перехватывает необработанные исключения в коде и собирает детальную информацию о них.
- Контекст для отладки: К каждой ошибке прилагается полный стектрейс, информация об окружении (версия ОС, браузера), действиях пользователя (
breadcrumbs) и кастомные теги. - Мониторинг производительности (APM): Отслеживает медленные транзакции (например, HTTP-запросы, запросы к БД), помогая выявить узкие места в производительности.
- Система оповещений: Гибко настраиваемые уведомления (Slack, Email, PagerDuty) информируют команду о критических сбоях.
Пример интеграции в Python:
import sentry_sdk
# Инициализация Sentry SDK с уникальным DSN проекта
sentry_sdk.init(
dsn="YOUR_DSN_HERE",
# Включает мониторинг производительности
traces_sample_rate=1.0,
)
def process_data(data):
# Пример операции, которая может вызвать ошибку
result = 100 / data['value']
return result
try:
process_data({'value': 0})
except Exception as e:
# Явная отправка исключения в Sentry
sentry_sdk.capture_exception(e)
print("Ошибка отправлена в Sentry.")
Основная цель Sentry — сократить время между возникновением ошибки в приложении и её исправлением, предоставляя разработчикам исчерпывающую информацию для анализа.