本文为您介绍通过HTTP上报监控数据的配置方法。

服务地址

云监控用于上报自定义事件的服务地址,请参见上报监控数据的服务地址

请求语法

通过HTTP方式上报监控数据的请求语法如下:
POST /metric/custom/upload HTTP/1.1 
Authorization:<AuthorizationString>
Content-Length:<Content Length>
Content-MD5:<Content MD5>
Content-Type:application/json
Date:<GMT Date>
Host: metrichub-cms-cn-hangzhou.aliyuncs.com
x-cms-signature:hmac-sha1
x-cms-api-version:1.0
x-cms-ip:192.168.XX.XX
User-Agent:cms-java-sdk-v-1.0
[{"dimensions":{"key":"value"},"groupId":12345,"metricName":"TestMetric","period":60,"time":"20210827T143329.213+0800","type":0,"values":{"value":10}}]

请求参数

通过HTTP方式上报监控数据的请求头和请求参数说明如下表所示。
  • 请求头
    Header 类型 描述 示例
    Authorization String 内容:AccessKeyId:SignString testKey:F86ADF652A6466FCCD860B867D9518D48C24E7F6
    Content-Length Long RFC 2616中定义的HTTP请求的Body长度。请求Body按UTF-8编码后的字节数。
    说明 如果请求无Body部分,则无需提供该请求头。
    151
    Content-MD5 String 请求Body经过MD5计算后的字符串,计算结果为大写字母和数字字符串。
    说明 如果请求无Body部分,则无需提供该请求头。
    215614AA47799058C009D3E20B19B83A
    Content-Type String 发送端发送的实体数据的数据类型。只支持application/json application/json
    Date String HTTP请求中的标准时间头(遵循RFC 1123格式,使用GMT标准时间)。

    示例:Mon, 3 Jan 2010 08:33:47 GMT

    Fri, 27 Aug 2021 06:33:55 GMT
    Host String HTTP请求的完整Host名称(不包括如https://这样的协议头)。

    示例:metrichub-cms-cn-hangzhou.aliyuncs.com

    metrichub-cms-cn-hangzhou.aliyuncs.com
    x-cms-api-version String API版本。当前版本1.0。 1.0
    x-cms-signature String 签名算法。目前,云监控只支持数字签名算法HMAC-SHA1。 hmac-sha1
    x-cms-ip String 上报监控数据的服务器IP地址。 192.168.XX.XX
    User-Agent String 客户端说明。 cms-java-sdk-v-1.0
  • 请求参数
    名称 类型 是否必选 描述
    groupId Long 应用分组ID。
    metricName String 监控项名称。详情请参见云服务监控项
    dimensions Object 维度Map,用于查询指定资源的监控数据。

    格式:key-value键值对形式的集合,常用的key-value集合为instanceId:i-abcdefgh12****

    time String 指标生成时间。支持的格式如下:
    • yyyyMMdd’T’HHmmss.SSSZ

      例如:20171012T132456.888+0800

    • long

      例如:1508136760000

    type Int

    上报数值的类型。0为原始值,1为聚合数据。

    当上报聚合数据时,建议上报60秒和300秒的数据,否则无法正常查询跨度大于7天的监控数据。

    period String

    聚合周期。单位:秒。

    如果type为1,则需要上传该参数,取值:
    • 60
    • 300
    values Object 指标值集合。

    如果type为0,则Key只能与Value相同,上报原始值,云监控会按周期将原始值聚合为多个值。例如:最大、计数、求和等。

返回示例

通过HTTP方式上报监控数据的代码返回示例如下:

{
  "code":"200",//200表示成功。
  "msg":""//正常上报时返回msg为空。
}