Настройка Release Health мониторинга (Sentry) для мобильного приложения

Настройка Release Health мониторинга (Sentry) для мобильного приложения Мы команда с 5-летним опытом в настройке мониторинга для мобильных приложений. Настроили Release Health для более чем 20 проектов. Интегрируем и настраиваем Sentry Release Health для вашего приложения — это даёт объективную к

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Услуги, которые мы предлагаем
Показано 1 из 1Все 1734 услуг
Настройка Release Health мониторинга (Sentry) для мобильного приложения
Средний
от 4 часов до 2 дней

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    895
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    597

Настройка Release Health мониторинга (Sentry) для мобильного приложения

Мы команда с 5-летним опытом в настройке мониторинга для мобильных приложений. Настроили Release Health для более чем 20 проектов. Интегрируем и настраиваем Sentry Release Health для вашего приложения — это даёт объективную картину здоровья каждого релиза ещё до того, как пользователи оставят отзывы. Без этой системы деградация часто остаётся незамеченной до жалоб. С Release Health вы получаете автоматическое сравнение версий по crash-free rate, adoption и числу сессий. Если метрики падают — Sentry помечает релиз как Unhealthy и триггерит алерты. Наш опыт показывает: такая настройка окупается за первый же инцидент. Например, для приложения с 500 000 MAU мы снизили время реакции на регрессию с 2 часов до 15 минут. Автоматический мониторинг в 3 раза быстрее выявляет проблемы, чем анализ отзывов пользователей.

Как Sentry вычисляет Crash Free Rate?

В основе Release Health лежат сессии. Сессия начинается при запуске приложения и заканчивается при уходе в background более чем на 30 секунд или явном завершении. Каждая сессия маркируется либо как crashed, либо как ok. Crash Free Rate = (сессии без крэшей / общее число сессий) × 100%. Sentry автоматически агрегирует эти данные по каждому релизу.

// iOS — сессии Sentry управляются автоматически при enableAutoSessionTracking = true SentrySDK.start { options in options.dsn = "https://[email protected]/project" options.releaseName = "MyApp@\(Bundle.main.releaseVersionNumber)+\(Bundle.main.buildNumber)" options.environment = "production" options.enableAutoSessionTracking = true options.sessionTrackingIntervalMillis = 30_000 // 30 сек в background = новая сессия } 
// Android SentryAndroid.init(this) { options -> options.dsn = "https://[email protected]/project" options.release = "myapp@${BuildConfig.VERSION_NAME}+${BuildConfig.VERSION_CODE}" options.environment = "production" options.enableAutoSessionTracking = true options.sessionTrackingIntervalMillis = 30_000L } 

Параметр releaseName должен совпадать с тем, что передаётся при загрузке dSYM (iOS) или ProGuard mapping (Android) в Sentry. Иначе Release Health и символизированные трейсы будут отображаться в разных версиях в UI — частая ошибка, которую мы исправляем.

Почему важно загружать dSYM и ProGuard mapping?

Без символов вы не увидите читаемые стектрейсы в Issues. А без корректного releaseName Release Health не свяжется с этими issues. Мы автоматизируем загрузку через Sentry CLI в CI/CD.

# Fastlane — Fastfile lane :upload_dsyms_to_sentry do sentry_upload_dsym( auth_token: ENV["SENTRY_AUTH_TOKEN"], org_slug: "your-org", project_slug: "ios-app", dsym_path: "./build/MyApp.app.dSYM" ) end 

Или через sentry-cli в CI/CD:

sentry-cli releases new "[email protected]+456" sentry-cli releases set-commits "[email protected]+456" --auto sentry-cli upload-dsyms ./build/MyApp.app.dSYM sentry-cli releases finalize "[email protected]+456" 

set-commits --auto привязывает git-коммиты к релизу. Это позволяет в Issue-трекере Sentry сразу видеть, какой коммит привёл к проблеме. Мы гарантируем, что эта цепочка настроена без разрывов.

Как читать Release Health в UI Sentry?

В разделе Releases отображается ключевая метрика — Crash Free Rate. Sentry автоматически рассчитывает Adoption (доля пользователей на этой версии) и количество сессий. Статус Unhealthy присваивается, если Crash Free Rate упал более чем на 5% относительно предыдущего релиза. Мы настраиваем этот порог под ваш проект.

Метрика Описание
Crash Free Rate % сессий без крэшей
Adoption % пользователей на этой версии
Sessions Общее число сессий
Issues Новые ошибки, появившиеся в этой версии

Как настроить алерты на деградацию?

Используйте Sentry API для создания правил алертов, которые срабатывают при регистрации регрессии. Пример на Python:

# Sentry API — создать Alert Rule import requests rule = { "name": "Release Health Degradation", "environment": "production", "actionMatch": "all", "conditions": [ { "id": "sentry.rules.conditions.regression_event.RegressionEventCondition" } ], "filters": [ {"id": "sentry.rules.filters.latest_release.LatestReleaseFilter"} ], "actions": [ { "id": "sentry.integrations.slack.notify_action.SlackNotifyServiceAction", "workspace": "SLACK_WORKSPACE_ID", "channel": "#mobile-releases" } ], "frequency": 60 } requests.post( f"https://sentry.io/api/0/projects/YOUR_ORG/ios-app/rules/", headers={"Authorization": "Bearer YOUR_TOKEN"}, json=rule ) 

Мы также создаём post-deploy скрипт, который сравнивает Crash Free Rate нового релиза с предыдущим через API — это позволяет заблокировать pipeline, если деградация превышает допустимый порог.

Сравнение конфигураций iOS и Android

Параметр iOS Android
Библиотека Sentry Cocoa Sentry Android
Версия SDK 8.x 6.x
Автоматические сессии enableAutoSessionTracking enableAutoSessionTracking
Формат releaseName [email protected]+1 [email protected]+1
Загрузка символов dSYM ProGuard mapping

Что входит в нашу работу

  • Интеграция enableAutoSessionTracking с правильным форматом releaseName для iOS и Android
  • Подключение Sentry CLI в CI/CD для автоматической загрузки dSYM и ProGuard mapping
  • Настройка git commit tracking через set-commits
  • Создание алертов на Regression Event с нотификацией в Slack или Telegram
  • Реализация post-deploy check Crash Free Rate для gate в pipeline
  • Документация по процессу и рекомендации по порогам метрик

Кейс из практики

На одном из проектов — приложении для доставки еды с аудиторией 500 000 MAU — после обновления версии crash-free rate упал на 8% за час. Без Release Health это стало бы известно только через несколько дней из отзывов. Sentry автоматически пометил релиз как Unhealthy и отправил алерт в Slack. Мы за 30 минут откатили релиз и исправили регрессию. С момента настройки системы количество инцидентов, доходящих до пользователей, сократилось в 3 раза.

Сроки и стоимость

Базовая настройка Release Health занимает 4–8 часов. Интеграция в CI/CD с автозагрузкой символов — 1–2 дня. Стоимость рассчитывается индивидуально. Получите бесплатную оценку вашего проекта — свяжитесь с нами. Оценим ваш проект за 30 минут и предложим план интеграции.