A отчет о сбоях обычно является системным программным обеспечением, функция которого состоит в том, чтобы идентифицировать сообщать подробности сбоя и предупреждать о сбоях, в производстве или в средах разработки / тестирования. Отчеты о сбоях часто включают такие данные, как трассировки стека, тип сбоя, тенденции и версия программного обеспечения. Эти отчеты помогают разработчикам программного обеспечения - веб-приложениям, SAAS, мобильным приложениям и т. Д. - диагностировать и устранять основную проблему, вызывающую сбои. Отчеты о сбоях могут содержать конфиденциальную информацию, такую как пароли, адреса электронной почты и контактную информацию, и поэтому стали предметом интереса для исследователей в области компьютерной безопасности.
Внедрение инструментов отчетов о сбоях как часть цикла разработки привело к стали стандартом, а инструменты для отчетов о сбоях стали обычным явлением, многие из них предлагаются бесплатно, например, Crashlytics.
Многие крупные игроки отрасли, которые являются частью экосистемы разработки программного обеспечения, вошли в игру. Такие компании, как Twitter, Google и другие, прилагают много усилий для поощрения разработчиков программного обеспечения к использованию их API, зная, что это увеличит их доходы в будущем (за счет рекламы и других механизмов). Поскольку они понимают, что должны предлагать элегантные решения для как можно большего числа проблем разработки, в противном случае их конкуренты будут действовать, они продолжают добавлять расширенные функции. Инструменты создания отчетов о сбоях являются важной функцией разработки, которую гигантские компании включают в свои портфели решений.
Многие инструменты отчетов о сбоях специализируются на мобильных приложениях. Многие из них - SDK.
В macOS есть стандартный репортер сбоев в / System / Library / CoreServices / Crash Reporter.app. Crash Reporter.app отправляет журналы сбоев Unix в Apple для их инженеров. В верхнем текстовом поле окна находится журнал сбоев, а в нижнем - комментарии пользователей. Пользователи также могут скопировать и вставить журнал в свой почтовый клиент, чтобы отправить его поставщику приложения для использования. Crash Reporter.app имеет 3 основных режима: ничего не отображать при сбое, отображать диалоговое окно «Приложение разбилось» или отображать окно отчета о сбоях.
Microsoft Windows включает службу отчетов о сбоях под названием Windows Error Reporting, которая предлагает пользователям отправлять отчеты о сбоях в Microsoft для онлайн-анализа. Информация поступает в центральную базу данных Microsoft. Он состоит из диагностической информации, которая помогает компании или группе разработчиков, ответственных за сбой, отладить и решить проблему, если они захотят это сделать. Отчеты о сбоях для стороннего программного обеспечения доступны сторонним разработчикам, получившим доступ от Microsoft.
Система учитывает все части процесса отладки и выпуска, так что целевые исправления ошибок можно применить через Центр обновления Windows. Другими словами, только людям, столкнувшимся с определенным типом сбоя, может быть предложено исправление ошибки, что ограничивает подверженность проблеме.
Согласно Der Spiegel, отчет о сбоях Microsoft использовался подразделением Tailored Access Operations (TAO) Агентства национальной безопасности для взлома компьютеров секретариата Мексики. общественной безопасности. Согласно тому же источнику, отчеты о сбоях Microsoft автоматически собираются в базу данных NSA XKeyscore, чтобы облегчить такие операции.
Другая библиотека отчетов об ошибках для Windows - это CrashRpt. Библиотека CrashRpt - это легкая среда с открытым исходным кодом для обработки ошибок для приложений, созданных в Microsoft Visual C ++ и работающих в Windows. Библиотека распространяется под новой лицензией BSD.
CrashRpt перехватывает необработанные исключения, создает файл минидампа сбоя, строит дескриптор сбоя в формате XML, предоставляет интерфейс, позволяющий пользователь, чтобы просмотреть отчет о сбое, и, наконец, он сжимает и отправляет отчет о сбое в службу поддержки программного обеспечения.
CrashRpt также предоставляет инструмент командной строки на стороне сервера для анализа отчетов о сбоях под названием crprober. Инструмент может читать все полученные отчеты о сбоях из каталога и создавать сводный файл в текстовом формате для каждого отчета о сбоях. Он также группирует похожие отчеты о сбоях, что упрощает определение наиболее популярных проблем. Инструмент crprober не имеет графического интерфейса, поэтому он довольно загадочен и сложен в использовании.
Существует также серверное программное обеспечение с открытым исходным кодом под названием CrashFix Server, которое может хранить, систематизировать и анализировать отчеты о сбоях, отправленные библиотекой CrashRpt. Он может группировать похожие отчеты о сбоях, имеет встроенный трекер ошибок и может создавать статистические отчеты. Сервер CrashFix предоставляет веб-интерфейс пользователя, позволяющий нескольким участникам проекта сотрудничать (загружать символы отладки, просматривать отчеты о сбоях и связывать ошибки с отчетами о сбоях).
ABRT (инструмент автоматического сообщения об ошибках) заявлен как независимый от дистрибутива, а с 2013 года развернут только на Дистрибутивы Fedora и Red Hat Enterprise Linux. ABRT перехватывает дампы ядра или обратную трассировку приложений и (после подтверждения пользователя) отправляет отчеты об ошибках в различные системы отслеживания ошибок, такие как Fedora Bugzilla [1].
Ubuntu размещает общедоступный трекер ошибок на errors.ubuntu.com, который ежедневно собирает сотни тысяч отчетов об ошибках с миллионов машин. Если программа дает сбой в Ubuntu, обработчик сбоя (например, Apport) уведомит пользователя и предложит сообщить о сбое. Если пользователь решит сообщить о сбое, детали (возможно, включая дамп ядра) будут загружены на сервер Ubuntu (daisy.ubuntu.com) для анализа. Дамп ядра автоматически обрабатывается для создания трассировки стека и сигнатуры сбоя. Сигнатура сбоя используется для классификации последующих отчетов о сбоях, вызванных той же ошибкой.
Bug Buddy - это инструмент сообщения о сбоях, используемый платформой GNOME. Когда приложение, использующее библиотеки GNOME, дает сбой, Bug Buddy генерирует трассировку стека с помощью gdb и предлагает пользователю отправить отчет в GNOME bugzilla. Пользователь может добавлять комментарии и просматривать детали отчета о сбое.
Инструмент отчетов о сбоях, используемый KDE, называется Dr. Конки . Пользователь также может получить обратную трассировку с помощью gdb.
Talkback (также известный как агент обратной связи по качеству) был средством сообщения о сбоях, используемым программным обеспечением Mozilla до версии 1.8.1. сообщать о сбоях своих продуктов на централизованный сервер для агрегирования или индивидуального анализа. Talkback - это проприетарное программное обеспечение, предоставленное корпорации Mozilla по лицензии SupportSoft. Если продукт Mozilla (например, Mozilla Firefox, Mozilla Thunderbird ) выйдет из строя при включенном Talkback, появится агент Talkback, предлагающий пользователю предоставить дополнительную информацию о сбое. Talkback не заменяет собственный репортер сбоев ОС, который, если он включен, появится вместе с агентом Talkback. Talkback был заменен на Breakpad в Firefox, начиная с версии 3.
Breakpad (ранее назывался Airbag). замена Talkback с открытым исходным кодом. Разработанный Google и Mozilla, он используется в текущих продуктах Mozilla, таких как Firefox и Thunderbird. Его значение заключается в том, что это первая многоплатформенная система отчетов о сбоях с открытым исходным кодом.
С 2007 года Breakpad входит в Firefox в Windows и Mac OS X, а также в Linux. Breakpad обычно используется в паре с которым получает и классифицирует сбои от пользователей.
Сама по себе панель Breakpad является лишь частью системы отчетов о сбоях, поскольку в ней нет механизма отчетов.
Crashpad - это программа для отчетов о сбоях с открытым исходным кодом, используемая Google в Chromium. Он был разработан как замена для Breakpad в связи с обновлением в macOS 10.10, в котором были удалены API, используемые Breakpad. Crashpad в настоящее время состоит из клиента отчетов о сбоях и некоторых связанных инструментов для macOS и Windows и считается практически завершенным для этих платформ. Crashpad стал клиентом для отчетов о сбоях для Chromium на macOS с марта 2015 г. и для Windows с ноября 2015 г.
World of Warcraft - еще одна программа, использующая собственный репортер сбоев., «Репортер ошибок». Репортер ошибок может не обнаруживать сбои все время; иногда вместо этого вызывается отчет о сбоях ОС. Известно даже, что Error Reporter дает сбой при сообщении об ошибках.
Android и iOS операционные системы также имеют встроенную функцию отчетов о сбоях.