Размещенный сервер Breakpad (Electron Crash Reporter)
Я хочу настроить службу для сбора отчетов о сбоях на панели управления (особенно для приложения Electron, использующего Electron Crash Reporter: https://github.com/electron/electron/blob/master/docs/api/crash-reporter.md)
Единственные серверы, которые я могу найти, - это просто сбросить мини-дамп и представить их в списке, который бесполезен для приложений с миллионами сеансов, генерирующих сотни отчетов о сбоях. Что-то вроде того, что Fabric/Crashlytics делает для iOS/Android, было бы идеальным (кластеры, соответствующие отчетам, сортируются по выпускам). Также что-то было бы очень приятно.
- Существует ли лучший проект для сбора отчетов о сбоях на панели управления?
- Есть ли хорошие варианты для хостинга?
- Существует ли какое-либо промежуточное программное обеспечение, которое будет собирать отчеты с панели управления и отправлять их в размещенные службы, такие как Crashlytics, HockeyApp или Firebase?
Спасибо!
3 ответа
Примечание. У меня недостаточно репутации, чтобы иметь пост с более чем двумя ссылками:/ Все перечисленные ниже элементы довольно легко найти с помощью веб-поиска.
Существует ли лучший проект для сбора отчетов о сбоях на панели управления?
Mozilla Socorro - это проект с открытым исходным кодом, используемый Mozilla для сбора отчетов о сбоях на панели управления из таких приложений, как Firefox. Вы можете увидеть их экземпляр Сокорро в действии, выполнив поиск по статистике аварий Mozilla.
Есть ли хорошие варианты хостинга?
Я знаю только о трех компаниях, которые предоставляют опцию аварийного управления размещенной на панели управления: Backtrace I/O, Bugsplat и Raygun I/O. Полное раскрытие: я работаю в Backtrace I / O
Backtrace I / O предоставляет размещенное решение для управления отчетами о сбоях панели управления, созданными из электронных приложений: https://documentation.backtrace.io/product_integration_minidump_electron/index.html. Это включает агрегацию при сбое, управление символами, интеграцию рабочих процессов (Slack, JIRA, PagerDuty и т. Д.), Настраиваемые атрибуты с полной отчетностью по всем атрибутам (вы можете добавить настраиваемые атрибуты с помощью crashReporter.setExtraParameter()
) [edit: исправлено написание] в приложении Electron.
Bugsplat обеспечивает агрегацию сбоев, сервер символов и интеграцию рабочих процессов. AFAICT, он поддерживает только статический набор атрибутов / полей (ищите Bugsplat Breakpad, чтобы найти их документацию) Это означает, что они не поддерживают все встроенные атрибуты, о которых сообщает Electron (guid
, process_type
, platform
и т. д.) и при этом они не поддерживают дополнительные атрибуты, добавленные через crashReporter.setExtraParameter()
, Также имейте в виду, что у них есть строгое ограничение на размер отчета о сбое панели управления (<2 МБ). Нет слов, если у них есть официальная поддержка приложений Electron.
Raygun только официально объявил о поддержке breakpad через пост в середине апреля. Я не могу найти никакой документации, чтобы предположить, что это то, что они активно поддерживают. Функциональность Ragyun + поддержка других языков находится на одном уровне с другими решениями для отчетов о сбоях, такими как Crashlytics, HockeyApp и т. Д.
Существует ли какое-либо промежуточное программное обеспечение, которое будет собирать отчеты с панели управления и отправлять их в размещенные службы, такие как Crashlytics, HockeyApp или Firebase?
Я не знаю ни о чем.
Еще одна новая опция: https://blog.sentry.io/2018/03/13/introudcing-sentry-electron
Sentry теперь будет отслеживать исходные сбои с помощью новой официальной электронной поддержки. Это хороший вариант, поскольку он также принимает ошибки JS для того же приложения.
Другой вариант:
Проект под проектом может быть развернут на геройку в 1 клик. Он анализирует дамп breakpad и передает его в Sentry.io (хороший хостинг с бесплатным планом). Он не совсем на 100% размещен (вы размещаете промежуточное ПО), но занимает всего 10 минут на настройку. Sentry обслуживает 99% и отлично группирует, создает отчеты и т. Д.