使用 Microsoft Store 分析 API 中的方法,以取得您新增至 Windows 桌面應用程式計畫的桌面應用程式之匯總錯誤報告資料。 此方法只能擷取過去 30 天內發生的錯誤。 此資訊也可在合作夥伴中心的桌面應用程式 健康情況報告 中找到。
先決條件
若要使用此方法,您必須先執行下列動作:
- 如果您尚未執行此操作,請完成 Microsoft Store 分析 API 的所有必要條件。
- 取得 Azure AD 存取權杖以便用於此方法的要求標頭中。 取得存取令牌之後,您必須在 60 分鐘内使用它,否則將會失效。 令牌到期之後,您可以取得新的令牌。
請求
請求語法
| 方法 | 請求網址識別碼 (URI) |
|---|---|
| 獲取 | https://manage.devcenter.microsoft.com/v1.0/my/analytics/desktop/failurehits |
請求標頭
| 頁首 | 類型 | 說明 |
|---|---|---|
| 授權 | 字符串 | 必須的。 Azure AD 存取令牌的形式為 Bearer<token>。 |
要求參數
| 參數 | 類型 | 說明 | 為必填項目 |
|---|---|---|---|
| 應用程式ID | 字符串 | 您想要擷取錯誤報告數據的桌面應用程式的產品 ID。 若要取得傳統型應用程式的產品標識碼,請在 合作夥伴中心開啟傳統型應用程式的任何分析報告 (例如 健康情況報告),並從 URL 擷取產品標識碼。 | 是的 |
| 開始日期 | 日期 | 要擷取之錯誤報告資料之日期範圍的開始日期,格式為 mm/dd/yyyy。 預設值為目前的日期。
注意: 此方法只能擷取過去 30 天內發生的錯誤。 |
否 |
| 結束日期 | 日期 | 要擷取之錯誤報告資料的日期範圍結束日期,格式為 mm/dd/yyyy。 預設值為目前的日期。 |
否 |
| 返回頁首 | 整數 (int) | 要求中要傳回的數據列數。 如果未指定,則最大值和預設值為10000。 如果查詢中有更多資料列,回應內容會包含下一個連結,您可以使用該連結來請求下一頁的資料。 | 否 |
| 略過 | 整數 (int) | 查詢中要略過的行數目。 使用此參數逐頁流覽大型數據集。 例如,top=10000 和 skip=0 會擷取前 10000 個數據列、top=10000 和 skip=10000 會擷取接下來的 10000 個數據列等等。 | 否 |
| 篩選器 | 字符串 | 一或多個語句用於篩選回應中的數據列。 每個敘述都包含回應主體中的欄位名稱及與 eq 或 ne 運算子相關的值,而且敘述可以使用 和 或 或 結合。 字串值必須以 篩選 參數中的單引弧括住。 您可以從回應正文指定下列欄位:
|
否 |
| 聚合層級 | 字符串 | 指定要擷取匯總數據的時間範圍。 可以是下列其中一個字串:day、week 或 month。 如果未指定,則預設值為 day。 如果您指定 week 或 month,則 failureName 和 failureHash 值會限制為 1000 個桶。 | 否 |
| 排序 | 字符串 | 排序結果數據值的語句。 語法為 orderby=field [order],field [order],...。 field 參數可以是下列其中一個字符串:
以下是 orderby 字串範例: orderby=date,market |
否 |
| 按群組分類 | 字符串 | 僅將資料彙總套用至指定欄位的陳述式。 您可以指定下欄位:
傳回的數據列將包含 groupby 參數中指定的欄位,以及以下內容:
groupby 參數可以搭配 aggregationLevel 參數使用。 例如:&分組依據=故障名稱,市場&聚合級別=周 |
否 |
範例請求
下列範例示範取得錯誤報告數據的數個要求。 將 applicationId 值替換為桌面應用程式的產品標識碼。
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>
回應
回應主體
| 價值觀 | 類型 | 說明 |
|---|---|---|
| 價值觀 | 陣列 | 對象的陣列,其中包含匯總錯誤報告數據。 如需每個物件中數據的詳細資訊,請參閱下面的 錯誤值 一節。 |
| @nextLink | 字符串 | 如果有額外的數據頁面,此字串會包含可用來要求下一頁數據的 URI。 例如,如果要求的 top 參數設定為 10000,但查詢有 10000 個以上的錯誤數據列,則會傳回此值。 |
| 總計數 | 整數 | 查詢的資料結果中的總列數。 |
錯誤值
Value 陣列中的元素包含下列值。
| 價值觀 | 類型 | 說明 |
|---|---|---|
| 日期 | 字符串 | 錯誤資料日期範圍中的第一個日期,格式為 yyyy-mm-dd。 如果要求指定單一天,這個值就是該日期。 如果要求指定較長的日期範圍,這個值就是該日期範圍中的第一個日期。 針對指定 aggregationLevel 值為 hour 的要求,該值也包含以格式的時間值。 |
| 應用程式ID | 字符串 | 您擷取錯誤數據之桌面應用程式的產品識別碼。 |
| 產品名稱 | 字符串 | 桌面應用程式的顯示名稱,衍生自其相關聯可執行檔的元數據。 |
| 應用程式名稱 | 字符串 | 待定 |
| 檔名 | 字符串 | 桌面應用程式的可執行檔名稱。 |
| 故障名稱 | 字符串 | 失敗的名稱,由四個部分組成:一或多個問題類別、例外狀況/錯誤檢查程式代碼、發生失敗的映像名稱,以及相關聯的函式名稱。 |
| 失敗哈希 | 字符串 | 錯誤代碼唯一標識符。 |
| 象徵 | 字符串 | 分配給此錯誤的符號。 |
| 作系統構建 | 字符串 | 發生錯誤的操作系統四部分組建編號。 |
| 作業系統版本 | 字符串 | 下列其中一個字串,指定安裝桌面應用程式的作業系統版本:
|
| osRelease作系統 | 字符串 | 下列其中一個字串,指定發生錯誤的作業系統版本或測試群組(作為作業系統版本中的子群組)。 針對 Windows 11: 版本 2110 針對 Windows 10:
適用於 Windows Server 1709:
適用於 Windows Server 2016:
若為 Windows 8.1:
針對 Windows 7:
如果作業系統的發行版本或測試環未知,這個欄位的值將為 未知。 |
| 事件類型 | 字符串 | 下列其中一個字串,指出錯誤事件的類型:
|
| 市場 | 字符串 | 裝置市場的 ISO 3166 國家/地區代碼。 |
| 裝置類型 | 字符串 | 下列其中一個字串,指定發生錯誤的裝置類型:
|
| 應用程式版本 | 字符串 | 發生錯誤的應用程式可執行檔案版本。 |
| 事件計數 | 數字 | 指定彙整層級中歸因於此錯誤的事件數量。 |
回應範例
下列範例顯示這個請求的 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
}