目录

数据导出说明

场景介绍

分析服务开放了服务端接口,允许您通过接口方式申请导出端侧采集的事件数据,并导入到您自有的BI系统中,进行统一的数据分析。导出完成后,分析服务异步地将导出的数据上传到云端存储对象(Object Storage Service),随后以HTTPS POST请求回调您接口的方式将导出结果和数据的存储路径推送给您。为了保证数据安全,下载链接会在48个小时后失效。

目前导出的状态有:

数据下载状态码

状态码描述

原因及处理

EXPORTED

成功导出。

及时处理下载链接。

NO_DATA

没有符合条件的数据。

建议更改数据筛选条件。

EXPORT_FAILED

导出失败。

服务端异常,建议重试。

TOO_MANY_RECORDS

一次导出数据量太多。

说明:
  • 导出数据文件大小超过5G时,提示此信息。
  • 如果数据文件大小没有超过5G,但数据量超过了500W条,建议缩减范围,如果不缩减范围将为您随机导出500W条数据。

建议缩小数据导出范围后重新发起请求。

建议服务端对下载链接的处理,采用异步处理方式,及时将成功状态返回给分析服务器。

附:数据筛选条件

属性名称

属性描述

app_ver

应用版本号。

device_maker

设备品牌。

device_name

设备型号。

region_cd

位置编码。

os_language

操作系统语言。

os_ver

操作系统版本。

event_id

事件ID。

说明:

仅支持预置事件以及自定义事件的导出,不支持自动采集事件的导出。

开发准备

[h2]设置回调接口

  1. 点击“我的项目”,在“华为分析 > 管理 > 分析设置”页面,勾选配置回调接口可进行相关设置。
  2. 配置回调接口地址,您的下载地址接收URL。

    PEM格式的证书与配置HTTPS证书获得的“Base64 编码 X.509(.CER)(S)”格式是一致的。

  3. 配置HTTPS证书。

    目前分析服务以HTTPS POST请求回调您接口,分析服务会校验您HTTPS证书的合法性,请您的服务器务必使用正式商用的HTTPS证书。

  4. 点击“测试回调”可以对回调接口进行功能测试,测试通过后点击“保存”完成回调接口的配置。

开发指导

在开发回调接口前,需要先准备一个公网域名,及一个可以接收post请求的接口(POST接口需要有HTTPS证书)。

开发过程请参考:

  1. 开发回调接口(代码如下),开发的域名为:habackup.hwcloudtest.cn。
    @RequestMapping(value = "/agc/analytics/callback", method = RequestMethod.POST)
    public ResultResp callback(@RequestBody @Valid ExportDataCallbackReq req) {
        ResultResp result = new ResultResp();
        // Analytics Kit导出任务生成完成后,接收回调
        if (LOGGER.isDebugEnabled()) {
            LOGGER.debug("the download url: {}", req.getFilePath());
        }
        // 拿到下载地址,继续往下做业务逻辑
        result.setResultCode("0");
        result.setResultMsg("success");
        return result;
    }

    请求对象:

    public class ExportDataCallbackReq implements Serializable {
        private static final long serialVersionUID = -8014011591749838257L;
        @JsonProperty("request_id")
        private String requestId;
        @JsonProperty("app_id")
        private String appId;
        @JsonProperty("status")
        private String status;
        @JsonProperty("file_path")
        private String filePath;
        @JsonProperty("status_time")
        private String statusTime;
    }
  2. 在“管理 > 分析设置”配置回调接口。

    配置后可以点击“测试回调”进行校验,校验通过后点击“保存”即可完成配置。配置完毕后如果跳转到其它页面,当再次返回该页面时HTTPS证书内容显示为密文,此时点击“测试回调”或“保存”,系统提示“回调接口证书无效”。若您需要再次进行测试,可以重新输入明文。

  3. 调用开放平台接口获取token。

    POST请求:

    URI:https://oauth-login.cloud.huawei.com/oauth2/v2/token

    Header:

    Content-Type:Application/x-www-form-urlencoded

    Body:

    grant_type:client_credentials
    client_id:100664247
    client_secret:170e4ecb457bd73fa7c977de976274a7

    响应:

    {
      "access_token": "CV6qeoJReXe+YfDRQomDe9VW1B6fzIH1QU260T94x4RBLUSZRjTRIcY7IngF1cPIEYaPhJCjVNOxrhvAo49Ay/Ukkf+p",
      "expires_in": 3600,
      "token_type": "Bearer"
    }
  4. 接口触发导出数据。

    POST请求:

    URI:https://analytics-api.cloud.huawei.com.cn/analytics/export/raw_data_requests/v2

    Header:

    Authorization:Bearer CV6qeoJReXe+YfDRQomDe9VW1B6fzIH1QU260T94x4RBLUSZRjTRIcY7IngF1cPIEYaPhJCjVNOxrhvAo49Ay\/Ukkf+p(从token的响应消息中获取token_type+空格+ access_token)
    x-App-id:10066424
    Content-Type:Application/json
    x-product-id:9105163812218569643

    Body:

    {
      "date_range": {
        "start_date": "2020-2-29",
        "end_date": "2020-3-10"
      },
      "file_format": "csv",
      "filters": []
    }

    响应:

    {
      "result_code": "0",
      "result_msg": "success",
      "request_id": "c0b41debe8064c54ab200d30907f40c5"
    }
  5. 页面查看导出状态。

    点击“我的项目”,通过“华为分析 > 管理 > 数据导出”页面查看。

  6. 导出完成后Analytics会自动回调第2步中您配置的回调接口,返回导出文件下载地址。
  7. 出现以下报文说明导出成功,可以通过file_path字段获取下载地址(48小时内可以下载)。
    [
      {
        "request_id": "c0b41debe8064c54ab200d30907f40c5",
        "App_id": "100664247",
        "status": "EXPORTED",
        "file_path": "https://nsp-ha-gdpr-drcn.obs.cn-north-2.myhuaweicloud.com/20200430_14_c0b41debe8064c54ab200d30907f40c5.csv?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=F9WBKUUWDQODJO4FQMBF%2F20200430%2Fcn-north-2%2Fs3%2Faws4_request&X-Amz-Date=20200430T073623Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature=9145e80d51e21cd295861a5a0688bbcfbf8805e071cd8b98e08b5eacf2171fdb",
        "status_time": "2020-04-30 07:37:02"
      }
    ]

附:导出文件字段说明示例、Windows环境下HTTPS域名证书获取方式