Анализирование докладов катастрофического отказа

После распределения приложения для iOS для тестирования при помощи TestFlight или после того, как Вы делаете его доступным на App Store, обычно загружаете и анализируете доклады катастрофического отказа. Когда сбои приложения, система создает крешлог, описывающий условия, при которых приложение завершилось, в большинстве случаев включая полное отслеживание стека для каждого потока выполнения. Apple предоставляет услугу отчета катастрофического отказа для приложений для iOS, собирающую и агрегировавшую пользовательские крешлоги.

Также просмотрите крешлоги непосредственно на устройствах на iOS или отчетах катастрофического отказа импорта, как описано в Просмотре и Импорте Катастрофических отказов в Окне Устройств. Например, если Вы распределяете свой iOS и приложение Mac за пределами хранилища, можно требовать отчетов катастрофического отказа непосредственно от пользователей и импортировать их в XCode.

О службе отчета катастрофического отказа

Apple предоставляет услугу, позволяющую Вам загружать отчеты катастрофического отказа для новых версий приложения для iOS и сборок, что Вы распределяете использование TestFlight или App Store. Служба собирается и группы подобные крешлоги в отчеты катастрофического отказа. Каждая сборка приложения может иметь многократные отчеты катастрофического отказа, и каждый отчет катастрофического отказа может содержать многократные крешлоги. Однако крешлоги не отправляются Apple, если пользователь не соглашается совместно использовать данные катастрофического отказа с разработчиками приложений. Пользователи TestFlight автоматически соглашаются совместно использовать данные катастрофического отказа. Служба делает следующий для генерации отчетов катастрофического отказа:

XCode выводит на экран информацию об отчетах катастрофического отказа в организаторе Катастрофических отказов:

../Art/7_AboutCrashesOrganizer_2x.png../Art/7_AboutCrashesOrganizer_2x.png

Прежде, чем просмотреть отчеты катастрофического отказа

Выполните все эти шаги, чтобы полностью включить службу отчета катастрофического отказа. Если Вы ранее представили приложение с символами к Подключению iTunes и распределили его использование TestFlight или App Store, можно уже видеть отчеты катастрофического отказа в организаторе Катастрофических отказов. Если Вы не видите отчеты катастрофического отказа в организатор Катастрофических отказов, проверяете выполнение этих шагов.

Шаг

../Art/checkbox_checked_2x.png

В XCode, для загрузки приложения на Подключение iTunes, вводят Apple ID в предпочтения Учетных записей, принадлежащий Программе Разработчика iOS, как описано в Добавлении Apple Учетная запись ID в XCode.

../Art/checkbox_checked_2x.png

Установите номер версии и номер сборки, как описано в Установке Строки Номера версии и Сборки. Если Вы распределяете другую сборку своего приложения, постепенно увеличиваете строку сборки.

../Art/checkbox_checked_2x.png

Создайте архив отдельного приложения и загрузите его на Подключение iTunes с символами, как описано в Распределении Вашей Предрелизной Сборки Используя TestFlight и Представление Вашего Приложения к Хранилищу. (Гарантируйте, что флажок «Include app symbols for your application …» устанавливается перед щелчком по Submit.)

Не удаляйте архивы, которые Вы загружаете на Подключение iTunes.

../Art/checkbox_checked_2x.png

В Подключении iTunes распределите приложение использованию тестеров TestFlight, как описано в Тестировании бета-версии TestFlight (Необязательно), или представьте приложение для анализа, как описано в Представлении Приложения к Анализу Приложения.

../Art/checkbox_checked_2x.png

На устройствах пользователи, загружающие Ваше приложение с хранилища, должны согласиться совместно использовать данные катастрофического отказа с разработчиками приложений, как описано в Совместном использовании Данных Катастрофического отказа с Разработчиками приложений. (Пользователи TestFlight автоматически соглашаются совместно использовать данные катастрофического отказа.)

../Art/checkbox_checked_2x.png

В XCode, для просматривания отчетов катастрофического отказа, вводят Apple ID, который является агентом команды или администратором или пользователем Подключения iTunes с Администратором или Технической ролью, как описано в Добавлении Apple Учетная запись ID в XCode.

../Art/checkbox_checked_2x.png

В XCode, для движения от стекового фрейма в организаторе Катастрофических отказов к исходному коду в навигаторе отладки, открывают проект XCode, который Вы заархивировали и загрузили на Подключение iTunes.

Кроме того, позвольте до трех дней между тем, когда Вы сначала распределяете свое приложение и когда отчеты катастрофического отказа появляются в XCode. Когда пользователь позволяет, для поддержания хорошего пользовательского опыта данные катастрофического отказа отправляются от устройств пользователя до Apple.

Просматривание отчетов катастрофического отказа в организаторе катастрофических отказов

Организатор Катастрофических отказов выводит на экран отчеты катастрофического отказа для всех приложений, разработанных всеми Вашими командами.

Просматривать отчеты катастрофического отказа

  1. В организаторе нажмите Crashes.

    ../Art/7_ViewingCrashReportSteps_2x.png../Art/7_ViewingCrashReportSteps_2x.png
  2. В левом столбце выберите приложение или локальный архив из списка.

    Список приложений получен из Подключения iTunes и включает информацию о каждой версии, и создайте Вас загруженный на Подключение iTunes.

  3. Наверху второго столбца выберите версию и создайте из всплывающего меню.

    XCode начинает обновлять отчеты катастрофического отказа для версии, и создайте Вас выбор. XCode загружает лучшие 25 отчетов катастрофического отказа — отчеты катастрофического отказа с большей частью числа случаев на уникальных устройствах — это произошло в течение прошлых двух недель.

  4. Во втором столбце выберите отчет катастрофического отказа.

    Заголовок катастрофического отказа сообщает о значениях по умолчанию стековому фрейму, где, вероятно, произошел катастрофический отказ. Число уникальных случаев устройства катастрофического отказа появляется ниже заголовка катастрофического отказа.

  5. В подробной области просмотрите крешлоги.

    Подробная область выводит на экран отслеживание стека для каждого потока. Стековый фрейм, где катастрофический отказ произошел, выделяется в оранжевом.

  6. В инспекторе добавьте информацию и просмотрите статистику об отчете катастрофического отказа.

Просмотр и нахождение отчетов катастрофического отказа

В списке отчета катастрофического отказа выполните эти действия:

../Art/7_select_crash_reports_2x.png

В подробной области выполните эти действия:

Редактирование информации об отчетах катастрофического отказа

Поскольку Вы решаете вопросы, можно хранить информацию о катастрофическом отказе, сообщает локально.

В списке отчета катастрофического отказа выполните эти действия:

В подробной области выполните это действие:

../Art/7_view_crash_reports_2x.png../Art/7_view_crash_reports_2x.png

В инспекторе выполните это действие:

Открытие исходного кода в навигаторе отладки

В подробной области выполните эти действия:

В инспекторе выполните это действие:

../Art/7_inspect_crash_reports_2x.png

XCode открывает связанный проект и выводит на экран строку кода в навигаторе отладки.

../Art/7_jump_to_source_2x.png../Art/7_jump_to_source_2x.png

Просмотр статистики об отчетах катастрофического отказа

Просмотрите данные катастрофического отказа за прошлые две недели типом устройства, операционной системой и датой. Для изменения типа устройства выберите Device Type из всплывающего меню. Для изменения операционной системы выберите Operating System из всплывающего меню.

../Art/7_view_statistics_2x.png

Совместное использование данных катастрофического отказа с разработчиками приложений

Если пользователи не совместно используют данные катастрофического отказа с разработчиками приложений, Apple не может обеспечить отчеты катастрофического отказа. Если пользователь сообщает о катастрофическом отказе, и Вы не имеете соответствующего отчета катастрофического отказа, просите, чтобы пользователь совместно использовал данные катастрофического отказа с разработчиками приложений. Данные катастрофического отказа автоматически отправляются Apple для приложений TestFlight, но не приложений пользовательские загрузки с App Store.

Дайте им инструкцию пользователям. И на iOS и на OS X, опция данных катастрофического отказа находится в разделе Diagnostics & Usage Настроек конфиденциальности.

Совместно использовать данные катастрофического отказа с разработчиками iOS

  1. В Настройках коснитесь Конфиденциальности.

  2. Прокрутите к нижней части и коснитесь Диагностики и Использования.

    ../Art/7_ios_privacy_settings_2x.png
  3. Если необходимо, коснитесь переключателя Share With App Developer для включения его.

Точно так же попросите, чтобы пользователи Mac совместно использовали свои данные катастрофического отказа с разработчиками приложений.

Совместно использовать данные катастрофического отказа с разработчиками Mac

  1. В Установках системы нажмите Security и Privacy.

  2. Нажмите Privacy и в левом столбце, нажмите Diagnostics и Usage.

    ../Art/7_mac_privacy_settings_2x.png../Art/7_mac_privacy_settings_2x.png
  3. Выберите «Share crash data with app developers».

    Для включения опций Privacy щелкните по значку блокировки. В диалоговом окне, появляющемся, введите учетные данные для системной учетной записи с административными привилегиями и нажмите Unlock.

Просмотр и импорт катастрофических отказов в окне устройств

В Окне Устройств можно посмотреть детали о крешлоге непосредственно на устройстве или импортировать катастрофический отказ, сообщает, что Вы получаете от других источников. Если Вы сохраняете архив своего приложения (который включает соответствующий двоичный файл и .dSYM файл), XCode автоматически symbolicates импортировал отчеты катастрофического отказа. XCode заменяет адреса памяти в крешлоге с человекочитаемыми именами функций и номерами строки. Тогда можно просмотреть отслеживание стека для каждого потока выполнения.

Поэтому не удаляйте архивы, которые Вы экспортируете и распределяете для тестирования. Например, если Вы распределяете свое приложение для iOS с помощью оперативной настройки (Распределяющий Приложение Используя Оперативную Настройку) или приложение Mac с помощью команды, настраивающей профиль (Тестирование бета-версии Приложения Mac), можно импортировать катастрофический отказ unsymbolicated, сообщает, что Вы получаете от тестеров. Можно также загрузить отчеты катастрофического отказа unsymbolicated с Подключения iTunes для приложений, выпущенных через App Store Mac или App Store.

Просмотреть крешлоги устройства или импортировать отчет катастрофического отказа

  1. Выберите Window> Devices.

  2. Если необходимо, подключение Ваше устройство на iOS к Вашему Mac.

  3. Выберите устройство под Устройствами и нажмите кнопку View Device Logs.

    ../Art/7_viewdevicelogs_2x.png

    Лист кажется выводящим на экран крешлоги на устройстве.

  4. Для просмотра крешлога выберите его в левом столбце.

    Просмотрите крешлог в подробном представлении справа.

  5. Для импорта отчета катастрофического отказа перетащите отчет катастрофического отказа от Средства поиска до левого столбца листа.

  6. Нажмите Done.

Репродуцирование катастрофических отказов в XCode

Удостоверьтесь, что протестировали ту же самую отказавшую сборку. Сохраните все архивы, которые Вы распределяете для тестирования или загружаете их на Подключение iTunes. Проверьте, что архив в XCode соответствует отчет катастрофического отказа, как описано в том, Как Соответствовать Отчет Катастрофического отказа к Сборке. Выполните эти те же шаги, чтобы определить, тестируете ли Вы ту же сборку, которую Вы представили хранилищу.

Для приложений Mac, для репродуцирования катастрофического отказа, используют гостевую учетную запись с новой установкой версии OS X, соответствующего отчет катастрофического отказа. Не пытайтесь воссоздать катастрофический отказ с помощью разработчика или администраторской системной учетной записи, потому что могут не произойти проблемы, которые Вы хотите проанализировать.