获取桌面应用程序的错误报告数据
在 Microsoft Store 分析 API 使用此方法,可获取已添加到 Windows 桌面应用程序计划的桌面应用程序的聚合错误报告数据。 此方法仅可以检索过去 30 天内发生的错误。 还可以在合作伙伴中心的桌面应用程序的运行状况报告中获取此信息。
先决条件
若要使用此方法,首先需要执行以下操作:
- 完成 Microsoft Store 分析 API 的所有先决条件(如果尚未这样做)。
- 获取 Azure AD 访问令牌,以供在此方法的请求标头中使用。 获取访问令牌后,在它到期前,你有 60 分钟的使用时间。 该令牌到期后,可以获取新的令牌。
请求
请求语法
方法 | 请求 URI |
---|---|
GET | https://manage.devcenter.microsoft.com/v1.0/my/analytics/desktop/failurehits |
请求头
标头 | 类型 | 说明 |
---|---|---|
授权 | 字符串 | 必需。 Azure AD 访问令牌的格式为 Bearertoken<>。 |
请求参数
参数 | 类型 | 描述 | 必需 |
---|---|---|---|
applicationId | string | 要为其检索错误报告数据的桌面应用程序的产品 ID。 若要获取桌面应用程序的产品 ID,请在合作伙伴中心打开桌面应用程序的分析报告(如运行状况报告)并从 URL 检索产品 ID。 | 是 |
startDate | date | 要检索的错误报告数据日期范围中的开始日期,格式为 mm/dd/yyyy 。 默认是当前日期。注意:此方法仅可以检索过去 30 天内发生的错误。 |
否 |
endDate | date | 要检索的错误报告数据日期范围中的结束日期,格式为 mm/dd/yyyy 。 默认是当前日期。 |
否 |
top | int | 要在请求中返回的数据行数。 如果未指定,最大值和默认值为 10000。 当查询中存在多行数据时,响应正文中包含的下一个链接可用于请求下一页数据。 | 否 |
skip | int | 要在查询中跳过的行数。 使用此参数可以浏览较大的数据集。 例如,top=10000 和 skip=0,将检索前 10000 行数据;top=10000 和 skip=10000,将检索之后的 10000 行数据,依此类推。 | 否 |
filter | string | 在响应中筛选行的一条或多条语句。 每条语句包含的响应正文中的字段名称和值使用 eq 或 ne 运算符进行关联,并且语句可以使用 and 或 or 进行组合。 filter 参数中的字符串值必须使用单引号引起来。 可以指定响应正文中的以下字段:
|
否 |
aggregationLevel | string | 指定用于检索聚合数据的时间范围。 可以是以下字符串之一:day、week 或 month。 如果未指定,默认值为 day。 如果指定 week 或 month,failureName 和 failureHash 值限制为 1000 个存储桶。 | 否 |
orderby | string | 对结果数据值进行排序的语句。 语法为 orderby=field [order],field [order],...,其中 field 参数可以是以下字符串之一:
下面是一个 orderby 字符串的示例:orderby=date,market |
否 |
groupby | string | 仅将数据聚合应用于指定字段的语句。 可以指定以下字段:
返回的数据行将包含 groupby 参数中指定的字段以及以下字段:
groupby 参数可以与 aggregationLevel 参数结合使用。 例如:&groupby=failureName,market&aggregationLevel=week |
否 |
请求示例
以下示例演示用于获取错误报告数据的多个请求。 将 applicationId 值替换为桌面应用程序的产品 ID。
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/desktop/failurehits?applicationId=10238467886765136388&startDate=1/1/2018&endDate=2/1/2018&top=10&skip=0 HTTP/1.1
Authorization: Bearer <your access token>
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/desktop/failurehits?applicationId=10238467886765136388&startDate=8/1/2017&endDate=8/31/2017&skip=0&filter=market eq 'US' and deviceType eq 'PC' HTTP/1.1
Authorization: Bearer <your access token>
响应
响应正文
值 | 类型 | 说明 |
---|---|---|
Value | array | 包含聚合错误报告数据的对象数组。 有关每个对象中的数据的详细信息,请参阅下面的错误值部分。 |
@nextLink | string | 如果存在其他数据页,则此字符串包含一个你可用来请求下一页数据的 URI。 例如,当请求的 top 参数设置为 10000,但查询的错误超过 10000 行时,就会返回此值。 |
TotalCount | integer | 查询的数据结果中的行总数。 |
错误值
Value 数组中的元素包含以下值。
Value | 类型 | 说明 |
---|---|---|
date | string | 错误数据的日期范围中的第一个日期,格式为 yyyy-mm-dd 。 如果请求指定了某一天,此值就是该日期。 如果请求指定了较长的日期范围,此值是该日期范围内的第一个日期。 对于指定 hour 的 aggregationLevel 值的请求,此值还包含采用格式 hh:mm:ss 的时间值。 |
applicationId | string | 要为其检索错误数据的桌面应用程序的产品 ID。 |
productName | string | 从其关联的可执行文件的元数据派生的桌面应用程序的显示名称。 |
appName | string | 待定 |
fileName | string | 桌面应用程序的可执行文件的名称。 |
failureName | string | 故障的名称,它由四个部分组成:一个或多个问题类、异常/bug 检查代码、发生故障的映像的名称和相关的函数名称。 |
failureHash | string | 错误的唯一标识符。 |
符号 | string | 分配给此错误的符号。 |
osBuild | string | 发生错误的操作系统的四部分生成号。 |
osVersion | string | 用于指定在其上安装桌面应用程序的操作系统版本的以下字符串之一:
|
osRelease | string | 用于指定发生错误的操作系统版本或外部测试 Ring(作为操作系统版本内的亚组)的以下字符串之一。 对于 Windows 11:版本 2110 对于 Windows 10:
对于 Windows Server 1709:
对于 Windows Server 2016:
对于 Windows 8.1:
对于 Windows 7:
如果 OS 版本或外部测试圈未知,则此字段具有“未知”值。 |
eventType | string | 以下字符串之一,指示错误事件类型:
|
market | string | 设备市场的 ISO 3166 国家/地区代码。 |
deviceType | string | 以下字符串之一,用于指定发生错误的设备的类型:
|
applicationVersion | string | 发生错误的应用程序可执行文件的版本。 |
eventCount | 数字 | 为指定的聚合级别归于此错误的事件数。 |
响应示例
以下示例举例说明此请求的 JSON 响应正文。
{
"Value": [
{
"date": "2018-02-01",
"applicationId": "10238467886765136388",
"productName": "Contoso Demo",
"appName": "Contoso Demo",
"fileName": "contosodemo.exe",
"failureName": "SVCHOSTGROUP_localservice_IN_PAGE_ERROR_c0000006_hardware_disk!Unknown",
"failureHash": "11242ef3-ebd8-d525-838d-b5497b225695",
"symbol": "hardware_disk!Unknown",
"osBuild": "10.0.15063.850",
"osVersion": "Windows 10",
"osRelease": "Version 1703",
"eventType": "crash",
"market": "US",
"deviceType": "PC",
"applicationVersion": "2.2.2.0",
"eventCount": 0.0012422360248447205
}
],
"@nextLink": "desktop/failurehits?applicationId=10238467886765136388&aggregationLevel=week&startDate=2018/02/01&endDate2018/02/08&top=1&skip=1",
"TotalCount": 21
}