Updated on 2024-11-06 GMT+08:00

Viewing Composite Metric Details

Function

This API is used to obtain details about a composite index by ID.

Calling Method

For details, see Calling APIs.

URI

GET /v2/{project_id}/design/compound-metrics/{id}

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID. For details about how to obtain the project ID, see Project ID and Account ID.

id

Yes

String

Entity ID. The value is of the String type instead of the Long type.

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

latest

No

Boolean

Indicates whether to query the latest.

Request Parameters

Table 3 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

IAM token, which is obtained by calling the IAM API for obtaining a user token (value of X-Subject-Token in the response header).

This field is mandatory for authentication using tokens.

workspace

Yes

String

Workspace ID. For details about how to obtain the workspace ID, see Instance ID and Workspace ID.

X-Project-Id

No

String

Project ID. For details about how to obtain the project ID, see Project ID and Account ID.

This parameter is mandatory for API requests that use AK/SK authentication in multi-project scenarios.

Content-Type

No

String

Default value: application/json;charset=UTF-8

This parameter is optional. If the body is available, this parameter is mandatory. If the body is unavailable, you do not need to set this parameter or verify it.

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

data

data object

Returned data.

Table 5 data

Parameter

Type

Description

value

CompoundMetricVO object

Returned data information.

Table 6 CompoundMetricVO

Parameter

Type

Description

id

String

Code. Set this parameter to a value of the String type instead of the Long type.

name_en

String

Field name.

name_ch

String

Service attribute.

description

String

Description

dimension_group

String

Granularity ID.

group_name

String

Granularity name, which is read-only.

group_code

String

Granularity code, which is read-only.

compound_type

String

Composite index type.

Options:

  • EXPRESSION: expression

  • PERIODICITY_VALUED_COMPARISON: chain comparison

  • INTERVAL_VALUED_COMPARISON: parallel comparison

comparison_type

String

Comparison type.

Options:

  • YEAR_TO_YEAR: year-on-year comparison

  • MONTH_TO_MONTH: month-on-month comparison

  • WEEK_TO_WEEK: weekly parallel comparison

metric_ids

Array of strings

Indicator information. The value of this parameter is of the String type instead of the Long type.

metric_names

Array of strings

Indicates the indicator name.

compound_metric_ids

Array of strings

Compound metric information. The value of this parameter is of the String type instead of the Long type.

compound_metric_names

Array of strings

Composite Index Name

cal_fn_ids

Array of strings

ID of the referenced function. The value of this parameter is of the String type instead of the Long type.

cal_exp

String

Calculation expression, for example, ${index_id} + ${compound#index_id}, where index_id indicates the ID of the referenced derivative indicator and compound#index_id indicates the ID of the referenced composite indicator.

l1_id

String

Subject area group ID, which is read-only. The value of this parameter is of the String type instead of the Long type.

l2_id

String

Subject area ID.

l3_id

String

Service object ID. Set this parameter to a value of the String type instead of the Long type.

data_type

String

Field type

create_by

String

Creator.

update_by

String

Person who updates the information.

status

String

Release status of an entity. This parameter is read-only and does not need to be set during creation and update.

Options:

  • DRAFT: draft

  • PUBLISH_DEVELOPING: to be reviewed

  • PUBLISHED: released

  • OFFLINE_DEVELOPING: to be reviewed

  • OFFLINE: offline

  • REJECT: rejected

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

approval_info

ApprovalVO object

Approval information. This parameter is read-only. Latest review information about a business object, including the business details, reviewer information, and review time.

new_biz

BizVersionManageVO object

Service version management. This parameter is read-only.

monitor

MetricMonitorVO object

Indicates the metric monitoring information.

l1

String

Chinese name of the subject area group. This parameter is read-only and does not need to be set when you create or update a subject area group.

l2

String

Chinese name of the subject area. This parameter is read-only and does not need to be set during creation and update.

l3

String

Chinese name of the business object. This parameter is read-only and does not need to be set during creation and update.

summary_table_id

String

SDR table ID, which is read-only. Set this parameter to a string instead of a long value.

Table 7 ApprovalVO

Parameter

Type

Description

id

String

Application ID. The value of this parameter is of the String type instead of the Long type.

tenant_id

String

Project ID. For details about how to obtain the project ID, see the API path parameter project_id.

name_ch

String

Chinese name of a service.

name_en

String

English name of a service.

biz_id

String

Service ID. The value is of the String type instead of the Long type.

biz_type

String

Business entity type.

Options:

  • AGGREGATION_LOGIC_TABLE: summary table

  • ATOMIC_INDEX: atomic metric

  • ATOMIC_METRIC: atomic metric (new)

  • BIZ_CATALOG: process architecture directory

  • BIZ_METRIC: service indicator

  • CODE_TABLE: code table

  • COMMON_CONDITION: general filter

  • COMPOSITE_METRIC: Compound Metric (new)

  • COMPOUND_METRIC: compound metric

  • CONDITION_GROUP: restriction group

  • DEGENERATE_DIMENSION: degenerate dimension

  • DERIVATIVE_INDEX: derivative indicator

  • DERIVED_METRIC: derivative indicator (new)

  • DIMENSION: dimension

  • DIMENSION_ATTRIBUTE: dimension attribute

  • DIMENSION_HIERARCHIES: dimension level

  • DIMENSION_LOGIC_TABLE: dimension table

  • DIMENSION_TABLE_ATTRIBUTE: dimension attribute

  • DIRECTORY: directory

  • FACT_ATTRIBUTE: fact table attribute

  • FACT_DIMENSION: fact table dimension

  • FACT_LOGIC_TABLE: fact table

  • FACT_MEASURE: fact table measurement

  • FUNCTION: function

  • INFO_ARCH: information architecture (used for modifying themes in batches)

  • MODEL: model

  • QUALITY_RULE: quality rule

  • SECRECY_LEVEL: security level

  • STANDARD_ELEMENT: data standard

  • STANDARD_ELEMENT_TEMPLATE: data standard template

  • SUBJECT: theme

  • Dimension attributes of SUMMARY_DIMENSION_ATTRIBUTE: summary tables

  • SUMMARY_INDEX: summary table indicator attribute

  • SUMMARY_TIME: time period attribute of the SDR table

  • TABLE_MODEL: relationship model (logical model/physical model)

  • TABLE_MODEL_ATTRIBUTE: relationship model attribute (logical model/physical model)

  • TABLE_MODEL_LOGIC: logical entity

  • TABLE_TYPE: table type

  • TAG: tag

  • TIME_CONDITION: time restriction

biz_info

String

Serialized service details. The type is string.

biz_info_obj

Object

Service details. The type is object.

biz_version

Integer

Service version.

biz_status

String

Release status of an entity. This parameter is read-only and does not need to be set during creation and update.

Options:

  • DRAFT: draft

  • PUBLISH_DEVELOPING: to be reviewed

  • PUBLISHED: released

  • OFFLINE_DEVELOPING: to be reviewed

  • OFFLINE: offline

  • REJECT: rejected

approval_status

String

Service approval status. This parameter is read-only.

Options:

  • DEVELOPING: being reviewed

  • APPROVED: approved

  • REJECT: rejected

  • WITHDREW: approval cancellation

approval_type

String

Service review type.

Options:

  • PUBLISH: released

  • OFFLINE: offline

submit_time

String

Submitted At

create_by

String

Creator.

l1

String

Chinese name of the subject area group. This parameter is read-only and does not need to be set when you create or update a subject area group.

l2

String

Chinese name of the subject area. This parameter is read-only and does not need to be set during creation and update.

l3

String

Chinese name of the business object. This parameter is read-only and does not need to be set during creation and update.

approval_time

String

Review time.

approver

String

Reviewer.

email

String

Email address of the reviewer.

msg

String

Review information.

directory_path

String

Directory tree.

Table 8 BizVersionManageVO

Parameter

Type

Description

id

String

ID information. The value of this parameter is of the String type instead of the Long type.

biz_type

String

Business entity type.

Options:

  • AGGREGATION_LOGIC_TABLE: summary table

  • ATOMIC_INDEX: atomic metric

  • ATOMIC_METRIC: atomic metric (new)

  • BIZ_CATALOG: process architecture directory

  • BIZ_METRIC: service indicator

  • CODE_TABLE: code table

  • COMMON_CONDITION: general filter

  • COMPOSITE_METRIC: Compound Metric (new)

  • COMPOUND_METRIC: compound metric

  • CONDITION_GROUP: restriction group

  • DEGENERATE_DIMENSION: degenerate dimension

  • DERIVATIVE_INDEX: derivative indicator

  • DERIVED_METRIC: derivative indicator (new)

  • DIMENSION: dimension

  • DIMENSION_ATTRIBUTE: dimension attribute

  • DIMENSION_HIERARCHIES: dimension level

  • DIMENSION_LOGIC_TABLE: dimension table

  • DIMENSION_TABLE_ATTRIBUTE: dimension attribute

  • DIRECTORY: directory

  • FACT_ATTRIBUTE: fact table attribute

  • FACT_DIMENSION: fact table dimension

  • FACT_LOGIC_TABLE: fact table

  • FACT_MEASURE: fact table measurement

  • FUNCTION: function

  • INFO_ARCH: information architecture (used for modifying themes in batches)

  • MODEL: model

  • QUALITY_RULE: quality rule

  • SECRECY_LEVEL: security level

  • STANDARD_ELEMENT: data standard

  • STANDARD_ELEMENT_TEMPLATE: data standard template

  • SUBJECT: theme

  • Dimension attributes of SUMMARY_DIMENSION_ATTRIBUTE: summary tables

  • SUMMARY_INDEX: summary table indicator attribute

  • SUMMARY_TIME: time period attribute of the SDR table

  • TABLE_MODEL: relationship model (logical model/physical model)

  • TABLE_MODEL_ATTRIBUTE: relationship model attribute (logical model/physical model)

  • TABLE_MODEL_LOGIC: logical entity

  • TABLE_TYPE: table type

  • TAG: tag

  • TIME_CONDITION: time restriction

biz_id

String

Service ID. The value is of the String type instead of the Long type.

biz_info

String

Business object information.

status

String

Release status of an entity. This parameter is read-only and does not need to be set during creation and update.

Options:

  • DRAFT: draft

  • PUBLISH_DEVELOPING: to be reviewed

  • PUBLISHED: released

  • OFFLINE_DEVELOPING: to be reviewed

  • OFFLINE: offline

  • REJECT: rejected

biz_version

Integer

Service version, which is read-only.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

Table 9 MetricMonitorVO

Parameter

Type

Description

id

String

Code. Set this parameter to a value of the String type instead of the Long type.

other_metric_ids

Array of strings

For other indicator IDs, set this parameter to the string type instead of the long type.

other_metric_names

Array of strings

Name of another indicator. This parameter is read-only.

other_compound_metric_ids

Array of strings

ID of another composite index.

other_compound_metric_names

Array of strings

Name of another compound metric.

expression

String

Alarm expression.

metric_id

String

Mounting ID. The value is of the String type instead of the Long type.

front_configs

String

Frontend expression configuration, which is used for front-end data restoration.

metric_type

String

Type of the mounted indicator.

Status code: 400

Table 10 Response body parameters

Parameter

Type

Description

error_code

String

Error code, for example, DS.6000, indicating that the request fails to be processed.

error_msg

String

Error message

data

Object

Returned data information.

Status code: 401

Table 11 Response body parameters

Parameter

Type

Description

error_code

String

Error code, for example, DS.6000, indicating that the request fails to be processed.

error_msg

String

Error message

data

Object

Returned data information.

Status code: 403

Table 12 Response body parameters

Parameter

Type

Description

error_code

String

Error code, for example, DS.6000, indicating that the request fails to be processed.

error_msg

String

Error message

data

Object

Returned data information.

Example Requests

This API is used to query details about a composite index based on the composite index ID.

GET https://{endpoint}/v2/{project_id}/design/compound-metrics/1170056628536553472

Example Responses

Status code: 200

This operation is successful, and the returned data is CompoundMetricVO details.

{
  "data" : {
    "value" : {
      "id" : "1170056628536553472",
      "name_en" : "com_compound_metric_test",
      "name_ch" : "Composite Index Test",
      "description" : "",
      "dimension_group" : "1169322847009742848,1169329693619625984.1169329693695123460.1169327565677182976",
      "group_name" : "vendor and stroke_order.dim_dropoff_date_key",
      "group_code" : "dim_vendor,fact_stroke_order.dim_dropoff",
      "compound_type" : "EXPRESSION",
      "comparison_type" : null,
      "metric_ids" : [ "1170007051066355712" ],
      "metric_names" : [ "Total fare (supplier, itinerary order. Drop-off time)" ],
      "compound_metric_ids" : [ ],
      "compound_metric_names" : null,
      "cal_fn_ids" : null,
      "cal_exp" : "${1170007051066355712}/2",
      "l1_id" : "1169309252771299328",
      "l2_id" : "1169309374670356480,1169310587398889472",
      "l3_id" : null,
      "data_type" : "BIGINT",
      "create_by" : "ei_dayu_y00321344_01",
      "update_by" : "ei_dayu_y00321344_01",
      "status" : "PUBLISHED",
      "create_time" : "2023-11-03T17:47:19+08:00",
      "update_time" : "2023-11-03T17:55:12+08:00",
      "approval_info" : {
        "id" : "1170056629291528192",
        "tenant_id" : null,
        "name_ch" : null,
        "name_en" : null,
        "biz_id" : "1170056628536553472",
        "biz_type" : null,
        "biz_info" : null,
        "biz_info_obj" : null,
        "biz_version" : 0,
        "biz_status" : "PUBLISHED",
        "approval_status" : "APPROVED",
        "approval_type" : null,
        "submit_time" : "2023-11-03T17:47:19+08:00",
        "create_by" : null,
        "l1" : null,
        "l2" : null,
        "l3" : null,
        "approval_time" : "2023-11-03T17:55:12+08:00",
        "approver" : "ei_dayu_y00321344_01",
        "email" : null,
        "msg" : "Fast Approval OK.",
        "directory_path" : null
      },
      "new_biz" : null,
      "monitor" : {
        "id" : "1170056628612050944",
        "other_metric_ids" : [ "1170007051066355712" ],
        "other_metric_names" : [ "Total fare (supplier, itinerary order. Drop-off time)" ],
        "other_compound_metric_ids" : [ ],
        "other_compound_metric_names" : null,
        "expression" : "${1170007051066355712}/2 < 0",
        "metric_id" : "1170056628536553472",
        "front_configs" : null,
        "metric_type" : "COMPOUND_METRIC"
      },
      "l1" : "Urban traffic",
      "l2" : "Itinerary records/Itinerary facts",
      "l3" : null,
      "summary_table_id" : "1170007052639219712"
    }
  }
}

Status code: 400

{
  "error_code" : "DS.60xx",
  "error_msg" : "The user request is illegal."
}

Status code: 401

{
  "error_code" : "DS.60xx",
  "error_msg" : "User authentication failed."
}

Status code: 403

{
  "error_code" : "DS.60xx",
  "error_msg" : "The user does not have permission to call this API."
}

SDK Sample Code

The SDK sample code is as follows.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.dataartsstudio.v1.region.DataArtsStudioRegion;
import com.huaweicloud.sdk.dataartsstudio.v1.*;
import com.huaweicloud.sdk.dataartsstudio.v1.model.*;


public class ShowCompoundMetricByIdSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");
        String projectId = "{project_id}";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        DataArtsStudioClient client = DataArtsStudioClient.newBuilder()
                .withCredential(auth)
                .withRegion(DataArtsStudioRegion.valueOf("<YOUR REGION>"))
                .build();
        ShowCompoundMetricByIdRequest request = new ShowCompoundMetricByIdRequest();
        request.withId("{id}");
        try {
            ShowCompoundMetricByIdResponse response = client.showCompoundMetricById(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkdataartsstudio.v1.region.dataartsstudio_region import DataArtsStudioRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkdataartsstudio.v1 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]
    projectId = "{project_id}"

    credentials = BasicCredentials(ak, sk, projectId)

    client = DataArtsStudioClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(DataArtsStudioRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ShowCompoundMetricByIdRequest()
        request.id = "{id}"
        response = client.show_compound_metric_by_id(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    dataartsstudio "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")
    projectId := "{project_id}"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := dataartsstudio.NewDataArtsStudioClient(
        dataartsstudio.DataArtsStudioClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ShowCompoundMetricByIdRequest{}
	request.Id = "{id}"
	response, err := client.ShowCompoundMetricById(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

For SDK sample code of more programming languages, see the Sample Code tab in API Explorer. SDK sample code can be automatically generated.

Status Codes

Status Code

Description

200

This operation is successful, and the returned data is CompoundMetricVO details.

400

BadRequest

401

Unauthorized

403

Forbidden