Query Metric Data


用于批量查询指标数据。最多返回根据时间排序的前一万条数据。

前提条件


已在 EnOS 指标管理中创建并发布派生、衍生指标,且已创建并发布指标查询映射配置。

使用 GET 方法

请求格式


GET https://{apigw-address}/metric-mgmt/v1.0/metrics/data/normal

请求参数(URI)


名称

位置(Path/Query)

必需/可选

数据类型

描述

orgId

Query

必需

String

用户所属的组织 ID。如何获取 orgId 信息>>

metrics

Query

必需

String

所需查询的指标 ID。支持传入多个 ID,用逗号隔开。

startTime

Query

可选

String

开始时间。时间格式为:yyyy-MM-dd HH:mm:ss

说明:

当查询单值指标时,此参数忽略;例如:查询当月发电量,按当前时间返回指标值。

当查询多值指标时,此参数为非必填项。不传则默认时间为当日零点(00:00:00)。

当时间只传了部分时,默认补齐,例如:传入 2021,默认补齐为 2021-01-01 00:00:00

endTime

Query

可选

String

结束时间。时间格式为:yyyy-MM-dd HH:mm:ss

说明:

当查询单值指标时,忽略此参数。例如:查询当月发电量,按当前时间返回指标值;

当查询多值指标时,此参数为非必填项。不传则默认时间为当日最后一秒(23:59:59);

当时间只传了部分时,默认补齐,例如:2021 补全为 2021-01-01 00:00:00

mdmIds

Query

可选

String

设备 ID。支持上传多个设备 ID,用逗号隔开。若参数为空,则默认查询所有设备。

extraFields

Query

可选

String

查询的其他维度表属性。

format

Query

可选

Int

查询结果返回格式。

format 0:默认格式,即以指标 ID 为查询索引,返回每个指标对应的设备 ID、时间和指标值;

format 1:以指标 ID 和设备 ID 为查询索引,返回时间和指标值。

format 2:以设备 ID 为查询索引,返回设备对应的每个指标的指标值和时间。

响应参数


名称

数据类型

描述

data

List<JSONObject>

返回指标数据。其结构参见 指标数据结构体>>

指标数据结构体


名称

数据类型

描述

metricIdentifier

String

指标 ID

time

String

时间

mdmId

String

设备

示例

请求示例


url: https://{apigw-address}/metric-mgmt/v1.0/metrics/data/normal?orgId=orgId&metrics=metricId0,metricId1&startTime=2021-05-19 00:00:00&endTime=2021-05-21 00:00:00

method: GET

返回示例


当请求参数 format 值为 0 时,返回示例如下。


{
  "msg": "OK",
  "code": 0,
  "data": [
        {
            "metricIdentifier":"MetricId0",
            "value":[
                {
                "storage_active_electric": 2200.00,
                "time": "2021-05-20",
                "mdmId": "mdmId0"
                },
                {
                "storage_active_electric": 100.00,
                "time": "2021-05-20",
                "mdmId": "mdmId1"
                }
            ]
        },
        {
            "metricIdentifier":"MetricId1",
            "value":[
                {
                "storage_reactive_electric": 2200.00,
                "time": "2021-05-20",
                "mdmId": "mdmId0"
                },
                {
                "storage_reactive_electric": 100.00,
                "time": "2021-05-20",
                "mdmId": "mdmId1"
                }
            ]
        }
    ]
}


当请求参数 format 值为 1 时,返回示例如下。


{
  "msg": "OK",
  "code": 0,
  "data": [
        {
            "metricIdentifier": "MetricId0",
            "mdmId": "mdmId0",
            "value": [
                {
                    "storage_active_electric": 2200.00,
                    "time": "2021-05-20"

                },
                {
                    "storage_active_electric": 100.00,
                    "time": "2021-05-20"
                }
            ]
        },
        {
            "metricIdentifier": "MetricId0",
            "mdmId": "mdmId1",
            "value": [
                {
                    "storage_active_electric": 2200.00,
                    "time": "2021-05-20"

                },
                {
                    "storage_active_electric": 100.00,
                    "time": "2021-05-20"
                }
            ]
        },
        {
            "metricIdentifier": "MetricId1",
            "mdmId": "mdmId0",
            "value": [
                {
                    "storage_reactive_electric": 2200.00,
                    "time": "2021-05-20"
                },
                {
                    "storage_reactive_electric": 100.00,
                    "time": "2021-05-20",
                }
            ]
        },
        {
            "metricIdentifier": "MetricId1",
            "mdmId": "mdmId1",
            "value": [
                {
                    "storage_reactive_electric": 2200.00,
                    "time": "2021-05-20"
                },
                {
                    "storage_reactive_electric": 100.00,
                    "time": "2021-05-20"
                }
            ]
        }
    ]
}


当请求参数 format 值为 2 时,返回示例如下。


{
  "msg": "OK",
  "code": 0,
  "data": [
    {
        "mdmId": "mdmId0",
        "value":[
            {
                "MetricId0": 2200.00,
                "MetricId1": 2200.00,
                "time": "2021-05-20"
            },
            {
                "MetricId0": 100.00,
                "MetricId1": 100.00,
                "time": "2021-05-21"
            }
        ]
    },
    {
        "mdmId": "mdmId1",
        "value":[
            {
                "MetricId0": 2200.00,
                "MetricId1": 2200.00,
                "time": "2021-05-20"
            },
            {
                "MetricId0": 100.00,
                "MetricId1": 100.00,
                "time": "2021-05-21"
            }
        ]
    }
]
}

SDK 示例


你可以在 Github 上获取指标管理的 SDK 示例:

使用 POST 方法

请求格式


POST https://{apigw-address}/metric-mgmt/v1.0/metrics/data/normal

请求参数(Header)


名称

必需/可选

数据类型

描述

Content-type

必需

String

内容或文件类型,默认值为 application/json

请求参数(Body)


名称

必需/可选

数据类型

描述

orgId

必需

String

用户所属的组织 ID。如何获取orgId信息>>

metrics

必需

String

所需查询的指标 ID。支持传入多个 ID,用逗号隔开。

startTime

可选

String

开始时间。时间格式为:yyyy-MM-dd HH:mm:ss

说明:

当查询单值指标时,此参数忽略;例如:查询当月发电量,按当前时间返回指标值;

当查询多值指标时,此参数为非必填项。不传则默认时间为当日零点(00:00:00);

当时间只传了部分时,默认补齐,例如:2021 补全为 2021-01-01 00:00:00

endTime

可选

String

结束时间。时间格式为:yyyy-MM-dd HH:mm:ss

说明:

当查询单值指标时,忽略此参数。例如:查询当月发电量,按当前时间返回指标值;

当查询多值指标时,此参数为非必填项。不传则默认时间为当日最后一秒(23:59:59);

当时间只传了部分时,默认补齐,例如:2021 补全为 2021-01-01 00:00:00

mdmIds

可选

String

设备 ID。支持上传多个设备 ID,用逗号隔开。若参数为空,则默认查询所有设备。

extraFields

可选

String

查询的其他维度表属性。

format

可选

Int

查询结果返回格式。

format 0:默认格式,即以指标 ID 为查询索引,返回每个指标对应的设备 ID、时间和指标值。

format 1:以指标 ID 和设备 ID 为查询索引,返回时间和指标值。

format 2:以设备 ID 为查询索引,返回设备对应的每个指标的指标值和时间。

响应参数


名称

数据类型

描述

data

List<JSONObject>

返回指标数据,详见 指标数据结构体>>

指标数据结构体


名称

数据类型

描述

metricIdentifier

String

指标 ID

time

String

时间

mdmId

String

设备

示例

请求示例


url: http://{apigw-address}/metric-mgmt/v1.0/metrics/data/normal?orgId=orgId

method: POST

request body:

{
    "orgId": "orgId of metric",
    "metrics": "metricId",
    "mdmIds": "mdmId",
    "startTime": "2022-01-19 14:18:07",
    "endTime": "2022-01-20 14:18:07",
    "extraFields":"",
    "format":0
}

返回示例


参见 GET 方式下返回示例: 返回示例>>

SDK 示例


你可以在 Github 上获取指标管理的 SDK 示例: