You need to enable JavaScript to run this app.
导航
指标服务
最近更新时间:2024.08.01 15:54:47首次发布时间:2022.10.27 11:31:11

本功能支持将业务线的指标服务权限授权给数据服务平台的 PSM(Product Subsystem Module) 应用,授权成功后,该应用即可通过应用请求调用指标平台业务线下的指标数据。

1 前提条件

  • 概览页面,已开通湖仓一体分布式数据自治DataOps敏捷研发服务。详细操作说明请参见 DataLeap 服务信息
  • 已创建业务线。
  • 在数据服务平台,已创建指标应用,才可对其执行授权操作。创建指标应用的详细操作说明请参见应用管理
  • 模型页面,已成功创建并发布指标模型,才可执行调用操作。相关操作说明请参见管理模型

2 管理指标服务授权

  1. 登录 DataLeap 控制台。
  2. 选择指标平台 > 管理中心 > 指标服务授权管理,进入指标服务授权管理页面。
    图片
  3. 在页面右上角的业务线下拉列表中,选择要授权的业务线。
  4. 可执行以下操作:
    • 单击添加应用授权按钮,在弹出的 PSM 窗口中,选择应用标识符后,单击确定按钮,完成该产品线对该应用的指标服务授权。
    • 单击列表中某条信息操作列的删除按钮,在弹出的确认对话框中,单击确定按钮,即可删除删除该授权。

3 调用指标

指标服务授权成功后,即可通过应用请求调用业务线下的指标。假设已提前创建好相关信息:

  • 应用:名称为电商指标调用demo演示,标识符为 product.ecodemo.module
  • 指标:最近1天支付订单总数最近1天小红书购买的支付订单总数

下面将以此为例向您介绍服务应用如何调用指标。

3.1 获取调用信息

调用前,先获取服务应用的 APP-TOKEN 和对应指标的 Measures。

3.1.1 获取 APP-TOKEN

APP-TOKEN 是数据服务下应用对应的密钥。

  1. 选择数据服务 > 应用管理,进入应用管理页面。
  2. 单击应用列表中对应应用操作列的密钥管理按钮,进入该应用的密钥管理页面后,复制调用指标的服务应用的密钥。
    图片

3.1.2 获取 Measures

Measures 是指标平台下对应模型的指标详情页的 API 查询码。

  1. 选择指标平台 > 建模研发 > 模型,进入模型页面后,选择对应的业务线和模型。
  2. 单击对应关联指标的查看图标,在弹出的窗口中,查看详情页对应指标 API查询码
    图片

3.2 请求调用指标

通过代码工具,输入请求代码调用对应的指标,待调用成功后,会获得正确的返回结果,示例如下。

说明

输入以下调用代码后,将以下内容替换为实际的信息。

  • user:当前登录的用户名称。
  • APP-TOKEN:在数据服务平台的应用管理页面,查看对应的密钥。
  • Measures:在对应模型的指标详情页面,查看 api查询码,支持同时查询多个。
  • Date:根据需求设置时间区间。
  • APP-CODE: 调用指标的应用的标识符。
  • Business: "all",保留字段。
  • Date: 指定需要查询的指标的业务时间范围。时间区间取闭区间,格式为 yyyy-MM-dd。
  • Dimensions: 指定指标需要聚合的维度,格式为字符串数组。
  • 请求

    curl --location --request POST 'http://180.184.64.61/data_service/api/measures/list' \
    --header 'user: account1' \
    --header 'Content-Type: application/json' \
    --header 'APP-CODE: product.ecodemo.module' \
    --header 'APP-TOKEN: 4Dm4YwDs7tUjDNvqmr8ar3D9gg8HRDDB' \
    --data-raw '{
            "Business": "all",                  
            "Date": {
                "Start": "2022-11-10",          
                "End": "2022-11-11"
            },
            "Dimensions": [
                "date"                          
            ],
            "Measures": {
                "pay_order_cnt_1d__500006": null, 
                "pay_order_cnt_1d_red__500006":null
            }
        }'
    
  • 返回

    {
        "Status": {
            "Code": 0,
            "Message": ""
        },
        "Result": {
            "Meta": [
                {
                    "Name": "connect_cnt__102728",
                    "Type": "int"
                },
                {
                    "Name": "date",
                    "Type": "date"
                }
            ],
            "Data": [
                {
                    "api_code1": 100,
                    "api_code2": 200,
                    "api_code3": 100,
                    "date": "2022-11-10"
                },
                {
                    "api_code1": 102,
                    "api_code2": 220,
                    "api_code2": 220,
                    "date": "2022-11-11"
                }
            ]
        }
    }