本文為您介紹通過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":""http://正常上報時返回msg為空。
}