更新时间:2025-08-21 GMT+08:00
分享

添加监控数据

功能介绍

添加一条或多条自定义指标监控数据,解决系统监控指标不能满足具体业务需求的场景。

监控数据保留时间请参见《云监控服务用户指南》的“指标数据保留多长时间”章节。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /V1.0/{project_id}/metric-data

  • 参数说明
    表1 参数说明

    名称

    是否必选

    说明

    project_id

    参数解释:

    项目ID,用于明确项目归属,配置后可通过该ID查询项目下资产,可以通过调用API获取,也可以从控制台获取。获取方式请参见获取项目ID

    约束限制:

    不涉及

    取值范围:

    字符串长度在1 ~64 之间。

    默认取值:

    不涉及

  • 样例
    POST https://{云监控的终端节点}/V1.0/{project_id}/metric-data

云监控的终端节点请前往终端节点查询对应区域的URL。

请求消息

  1. 单次POST请求消息体大小不能超过512KB,否则请求会被服务端拒绝。
  2. POST请求发送周期应小于最小聚合周期,否则会出现聚合数据点不连续。例如:聚合周期为5分钟,发送周期为7分钟,则5分钟情况的聚合数据会出现每10分钟才出现一个点。
  3. POST请求体中时间戳(collect_time)的值必须从当前时间的前三天到当前时间后的十分钟之内某一时间,如果不在这个范围内,则不允许插入指标数据。
  • 请求参数
    表2 参数说明

    名称

    参数类型

    是否必选

    说明

    数组元素

    Array of objects

    参数解释:

    用于添加一条或多条自定义指标监控数据,请求参数。

    详细参数请参见表3

    约束限制:

    至少添加1条指标监控数据,最多添加10000条指标监控数据。单次POST请求消息体大小不能超过512KB。

    表3 数组元素

    名称

    是否必选

    参数类型

    说明

    metric

    Object

    参数解释:

    指标数据。

    详细参数请参见表4

    约束限制:

    不涉及。

    ttl

    Integer

    参数解释:

    数据的有效期,超出该有效期则自动删除该数据,单位秒。

    约束限制:

    不涉及。

    取值范围:

    最小值为1,最大值为604800。

    默认取值:

    不涉及。

    collect_time

    Long

    参数解释:

    数据收集时间 。UNIX时间戳,单位毫秒。

    约束限制:

    不涉及。

    取值范围:

    因为客户端到服务器端有延时,因此插入数据的时间戳应该在[当前时间-3天+10秒,当前时间+10分钟-10秒]区间内,保证到达服务器时不会因为传输时延造成数据不能插入数据库。

    默认取值:

    不涉及。

    value

    Double

    参数解释:

    待添加的监控指标数据的值。

    约束限制:

    不涉及。

    取值范围:

    数值类型支持“整数”或“浮点数”。

    默认取值:

    不涉及。

    unit

    String

    参数解释:

    数据的单位。

    约束限制:

    不涉及。

    取值范围:

    字符串长度在0~32 之间。

    默认取值:

    不涉及。

    type

    String

    参数解释:

    数据类型。

    约束限制:

    不涉及。

    取值范围:

    枚举值,只能是"int"或"float"。

    • int:整数
    • float:浮点数

    默认取值:

    不涉及。

    表4 metric字段数据结构说明

    名称

    是否必选

    参数类型

    说明

    namespace

    String

    参数解释:

    服务指标命名空间。各服务命名空间请参考支持监控的服务列表

    约束限制:

    不涉及

    取值范围:

    格式为service.item;service和item必须是字符串,必须以字母开头,只能包含0-9/a-z/A-Z/_,其中service不能为“SYS”、“AGT”和“SRE”,namespace不能为SERVICE.BMS,因为此namespace已被系统使用。字符串长度在3~32 之间。如:弹性云服务器的命名空间为SYS.ECS,文档数据库的命名空间为SYS.DDS。

    默认取值:

    不涉及。

    dimensions

    Array of objects

    参数解释:

    指标的维度。详细参数请参见表5

    约束限制:

    目前最大支持4个维度。

    metric_name

    String

    参数解释:

    指标ID,例如弹性云服务器的监控指标CPU使用率,对应的metric_name为cpu_util。各服务监控指标请参考支持监控的服务列表

    约束限制:

    不涉及。

    取值范围:

    必须以字母开头,只能包含0-9/a-z/A-Z/_/-;如:弹性云服务器中的监控指标cpu_util,表示弹性服务器的CPU使用率;文档数据库中的指标mongo001_command_ps,表示command执行频率。字符串长度在1~96 之间。

    默认取值:

    不涉及。

    表5 dimensions字段数据结构说明

    名称

    是否必选

    参数类型

    说明

    name

    String

    参数解释:

    监控维度名称,例如弹性云服务器的维度为instance_id。各服务维度请参考支持监控的服务列表,可参考维度中key字段。

    约束限制:

    必须以字母开头,只能包含0-9/a-z/A-Z/_/-,字符串长度在1~32 之间。

    取值范围:

    不涉及。

    默认取值:

    不涉及。

    value

    String

    参数解释:

    维度取值,例如弹性云服务器的ID。

    约束限制:

    不涉及。

    取值范围:

    必须以字母或数字开头,只能包含0-9/a-z/A-Z/_/-,字符串长度在1~256 之间。

    默认取值:

    不涉及。

  • 请求样例
    请求样例一:添加自定义的维度instance_id为6f3c6f91-4b24-4e1b-b7d1-a94ac1cb011d的监控指标数据cpu_util。
    [
        {
            "metric": {
                "namespace": "MINE.APP",
                "dimensions": [
                    {
                        "name": "instance_id",
                        "value": "6f3c6f91-4b24-4e1b-b7d1-a94ac1cb011d"
                    }
                ],
                "metric_name": "cpu_util"
            },
            "ttl": 172800,
            "collect_time": 1463598260000,
            "type": "float",
            "value": 0.09,
            "unit": "%"
        },
       {
            "metric": {
                "namespace": "MINE.APP",
                "dimensions": [
                    {
                        "name": "instance_id",
                        "value": "6f3c6f91-4b24-4e1b-b7d1-a94ac1cb011d"
                    }
                ],
                "metric_name": "cpu_util"
            },
            "ttl": 172800,
            "collect_time": 1463598270000,
            "type": "float",
            "value": 0.12,
            "unit": "%"
        }
    ]
    请求样例二:添加关系型数据库的维度rds_cluster_id为3c8cc15614ab46f5b8743317555e0de2in01的监控指标数据rds021_myisam_buf_usage。
    [
       {
            "metric": {
                "namespace": "SYS.RDS",
                "dimensions": [
                    {
                        "name": "rds_cluster_id",
                        "value": "3c8cc15614ab46f5b8743317555e0de2in01"
                    }
                ],
                "metric_name": "rds021_myisam_buf_usage"
            },
            "ttl": 172800,
            "collect_time": 1463598260000,
            "type": "float",
            "value": 0.01,
            "unit": "Ratio"
        }
    ]
    请求样例三:添加分布式缓存服务的维度dcs_instance_id为1598b5d4-3cb5-4f4d-8d99-2425d8e9ed54和dcs_cluster_redis_node为6666cd76f96956469e7be39d750cc7d9的监控指标数据connections_usage。
    [
        {
            "metric": {
                "namespace": "SYS.DCS",
                "dimensions": [
                    {
                        "name": "dcs_instance_id",
                        "value": "1598b5d4-3cb5-4f4d-8d99-2425d8e9ed54"
                    },
                    {
                        "name": "dcs_cluster_redis_node",
                        "value": "6666cd76f96956469e7be39d750cc7d9"
                    }
                ],
                "metric_name": "connections_usage"
            },
            "ttl": 172800,
            "collect_time": 1463598260000,
            "type": "float",
            "value": 8.3,
            "unit": "%"
        }
    ]

响应消息

无消息体。

返回值

  • 正常

    201

  • 异常

    返回值

    说明

    400 Bad Request

    请求错误。

    401 Unauthorized

    未提供认证信息,或认证信息错误。

    403 Forbidden

    请求页面被禁止访问。

    408 Request Timeout

    请求超出了服务器的等待时间。

    429 Too Many Requests

    当前请求过多。

    500 Internal Server Error

    请求未完成,服务异常。

    503 Service Unavailable

    系统暂时不可用,请求受限。

错误码

请参考返回错误码说明

相关文档