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 示例: