导出诊断数据

本文逐步介绍如何根据用户请求导出数据。 若要导出数据,有两个选项:

  1. 使用 Azure Blob 存储
  2. 调用 API 获取特定的崩溃/错误信息

使用 Azure Blob 存储

将所有错误和符号化崩溃(包括堆栈跟踪和附件)导出到 Azure 博客存储。 需要 Azure 订阅将数据导出到Azure Blob 存储。 若要详细了解如何App Center导出Azure Blob 存储,App Center 导出文档

若要将诊断数据导出到 Blob 存储,请调用以下 App Center API:

POST https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/export_configurations

使用以下有效负载之一将故障导出到Azure Blob 存储:

标准导出的有效负载:

{
  "type" : "blob_storage_linked_subscription",
  "subscription_id": "<Your-Azure-Subscription-ID",
  "export_entities": [ "crashes" ]
}

自定义导出的有效负载:

{
  "type" : "blob_storage_connection_string",
  "connection_string": "<Your-blob-storage-connection-string",
  "export_entities": [ "crashes" ]
}

若要查找 Blob 存储中的位置,请调用以下 App Center API:

GET https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/export_configurations

调用 API 获取特定的崩溃/错误信息

这些 API 是导出关联的诊断信息时必须调用的不同 API。

1.通过调用以下调用获取崩溃/错误组中每个崩溃/错误的崩溃/错误日志元数据:

https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/errors

2. 通过调用获取 stacktrace:

https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/stacktrace

3. 通过调用获取任何记录的事件:

https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/errors/{errorId}/session_logs

4. 通过调用获取任何附件 Id:

https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/errors/{errorId}/attachments
  1. 如果这是文本附件,则可以通过调用以下内容获取文本:
https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/errors/{errorId}/attachments/{attachmentId}/text
  1. 如果这是二进制附件,可以通过调用以下内容获取 URI 位置:
https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/errors/{errorId}/attachments/{attachmentIdd}/location

如何向用户提供此数据的副本

必备组件: 以下过程要求你有一种方法来映射 App Center 安装 Id 和用户。

若要为特定用户提供其数据,必须搜索导出的数据,并将具有特定安装 ID 的日志复制到其他文件中。 该文件将包含已导出的与该特定用户对应的所有数据。