Получение сведений об ошибке в классическом приложении

Используйте этот метод в API аналитики для Microsoft Store, чтобы получить подробные данные об определенной ошибке в вашем приложении в формате JSON. Этот метод позволяет получать подробные сведения только об ошибках, возникших за последние 30 дней. Подробные данные об ошибках также доступны в отчете о работоспособности классических приложений в Центре партнеров.

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

Предварительные требования

Для использования этого метода сначала необходимо сделать следующее:

  • Если вы еще не сделали этого, выполните все необходимые условия для API аналитики для Microsoft Store.
  • Получите маркер доступа Azure AD, который будет использоваться в заголовке запроса этого метода. После получения маркера доступа у вас будет 60 минут, чтобы использовать его до истечения срока действия. После истечения срока действия маркера можно получить новый маркер.
  • Получите идентификатор ошибки, для которой требуется получить подробные сведения. Чтобы получить этот идентификатор, используйте метод получения данных отчетов об ошибках и значение failureHash в тексте ответа этого метода.

Запрос

Синтаксис запроса

Метод Универсальный код ресурса (URI) запроса
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/desktop/failuredetails

Заголовок запроса

Заголовок Тип Описание
Авторизация строка Обязательный. Маркер доступа Azure AD в видемаркера>носителя<.

Параметры запроса

Параметр Тип Описание Обязательно
applicationId строка Код продукта классического приложения, для которого требуется получить данные об ошибках. Чтобы получить идентификатор продукта классического приложения, откройте любой аналитический отчет для классического приложения в Центре партнеров (например, отчет о работоспособности) и получите идентификатор продукта по URL-адресу. Да
failureHash строка Уникальный идентификатор ошибки, о которой требуется получить подробные сведения. Чтобы получить это значение для интересующей вас ошибки, используйте метод получения данных отчетов об ошибках и значение failureHash в тексте ответа этого метода. Да
startDate Дата Начальная дата диапазона дат, для которого требуется получить подробные данные об ошибках. По умолчанию используется текущая дата минус 30 дней.

Примечание: Этот метод может получать сведения только об ошибках, произошедших за последние 30 дней.
Нет
endDate Дата Конечная дата диапазона дат, для которого требуется получить подробные данные об ошибках. По умолчанию используется текущая дата. нет
top INT Количество строк данных, возвращаемых в запросе. Максимальное значение и значение по умолчанию (если параметр не указан) — 10 000. Если в запросе содержится больше строк, то тело ответа будет содержать ссылку «Далее», которую можно использовать для запроса следующей страницы данных Нет
skip INT Количество строк, пропускаемых в запросе. Используйте этот параметр для постраничного перемещения по большим наборам данных. Например, при top=10 и skip=0 извлекаются первые 10 строк данных; при top=10 и skip=10 извлекаются следующие 10 строк данных и т. д. Нет
фильтр строка Одно или несколько выражений для фильтрации строк в ответе. Каждое выражение содержит имя поля из тела ответа и значение, которое связано с помощью операторов eq или ne; выражения можно комбинировать, используя операторы and или or. В параметре filter строковые значения должны быть заключены в одиночные кавычки. Вы можете указать следующие поля из тела ответа:

  • Рынке
  • date
  • cabIdHash
  • cabExpirationTime
  • deviceType
  • deviceModel
  • osVersion
  • osRelease
  • applicationVersion
  • osBuild
  • fileName
Нет
orderby строка Выражение, которое определяет порядок полученных значений данных. Используется следующий синтаксис: orderby=field [order],field [order],..., где параметр field может принимать одно из следующих строковых значений:
  • Рынке
  • date
  • cabIdHash
  • cabExpirationTime
  • deviceType
  • deviceModel
  • osVersion
  • osRelease
  • applicationVersion
  • osBuild
  • fileName

Параметр order является необязательным и может принимать значения asc или desc, которые указывают, соответственно, порядок сортировки по возрастанию или по убыванию для каждого поля. Значение по умолчанию — asc.

Ниже приведен пример строки orderby : orderby=date,market

Нет

Пример запроса

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

GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/desktop/failuredetails?applicationId=10238467886765136388&failureHash=012e33e3-dbc9-b12f-c124-9d9810f05d8b&startDate=2016-11-05&endDate=2016-11-06&top=10&skip=0 HTTP/1.1
Authorization: Bearer <your access token>

GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/desktop/failuredetails?applicationId=10238467886765136388&failureHash=012e33e3-dbc9-b12f-c124-9d9810f05d8b&startDate=2016-11-05&endDate=2016-11-06&top=10&skip=0&filter=market eq 'US' and deviceType eq 'PC' HTTP/1.1
Authorization: Bearer <your access token>

Ответ

Текст ответа

Значение Тип Описание
Значение array Массив объектов, содержащий подробные данные об ошибках. Дополнительные сведения о данных в каждом объекте см. далее в разделе Значения подробных сведений об ошибках.
@nextLink строка При наличии дополнительных страниц данных эта строка содержит универсальный код ресурса (URI), который можно использовать для запроса следующей страницы данных. Например, это значение возвращается в том случае, если параметр top запроса имеет значение 10 000, но для данного запроса имеется больше 10 000 строк с информацией об ошибках.
TotalCount Целое число Общее количество строк в результирующих данных для запроса.

Значения подробных сведений об ошибках

Элементы в массиве Value содержат следующие значения.

Значение Тип Описание
applicationId строка Значение кода продукта для классического приложения, для которого требуется извлечь сведения об ошибках.
failureHash строка Уникальный идентификатор ошибки.
failureName строка Имя сбоя, состоящее из четырех частей: один или несколько классов проблемы, код проверки исключения или ошибки, имя образа, в котором произошла ошибка, и соответствующее имя функции.
Дата строка Первая дата в диапазоне дат, для которого требуется получить данные об ошибках. Если в запросе указан один день, это значение равно дате, соответствующей тому дню. Если запрос указывает неделю, месяц или другой диапазон дат, это значение равно первой дате в этом диапазоне дат.
cabIdHash строка Уникальный хэш идентификатора CAB-файла, связанного с этой ошибкой.
cabExpirationTime строка Дата и время окончания срока действия CAB-файла, когда его больше нельзя будет скачать, в формате ISO 8601.
market строка Код страны рынка устройства по стандарту ISO 3166.
osBuild строка Номер сборки операционной системы, в которой произошла ошибка.
applicationVersion строка Версия исполняемого файла приложения, в котором произошла ошибка.
deviceModel строка Строка, указывающая модель устройства, на котором выполнялось приложение в момент возникновения ошибки.
osVersion строка Одна из следующих строк, указывающая версию ОС, в которую произведена установка классического приложения:

  • Windows 7
  • Windows 8.1
  • Windows 10
  • Windows 11
  • Windows Server 2016
  • Windows Server 1709
  • Unknown
osRelease строка Одна из следующих строк, задающих выпуск операционной системы или цикл фокус-тестирования (как подмножество в версиях ОС), в котором возникла ошибка.

Для Windows 11: версия 2110

Для Windows 10.

  • Версия 1507
  • Версия 1511
  • Версия 1607
  • Версия 1703
  • Версия 1709
  • Версия 1803
  • Release Preview
  • Предварительная оценка — ранний доступ
  • Предварительная оценка Windows — поздний доступ

Для Windows Server 1709

  • RTM

Для Windows Server 2016

  • Версия 1607

Для Windows 8.1.

  • Обновление 1

Для Windows 7.

  • Пакет обновления 1 (SP1)

Если выпуск операционной системы или цикл фокус-тестирования неизвестны, это поле имеет значение Unknown.

deviceType строка Одна из следующих строк, указывающая тип устройства, на котором произошла ошибка:

  • PC
  • Сервер
  • Unknown
cabDownloadable Логическое Указывает, может ли этот пользователь скачать CAB-файл.
fileName строка Имя исполняемого файла для классического приложения, для которого требуется извлечь сведения об ошибках.

Пример ответа

В следующем примере демонстрируется пример тела ответа JSON на данный запрос.

{
  "Value": [
    {
      "applicationId": "10238467886765136388",
      "failureHash": "012345-5dbc9-b12f-c124-9d9810f05d8b",
      "failureName": "NULL_CLASS_PTR_WRITE_c0000005_contoso.exe!unknown_error_in_process",
      "date": "2018-01-28 23:55:29",
      "cabIdHash": "54ffb83a-e159-41d2-8158-f36f306cc01e",
      "cabExpirationTime": "2018-02-27 23:55:29",
      "market": "US",
      "osBuild": "10.0.10240",
      "applicationVersion": "2.2.2.0",
      "deviceModel": "Contoso All-in-one",
      "osVersion": "Windows 10",
      "osRelease": "Version 1703",
      "deviceType": "PC",
      "cabDownloadable": false,
      "fileName": "contosodemo.exe"
    }
  ],
  "@nextLink": null,
  "TotalCount": 1
}