このトピックでは、HTTPリクエストを送信してモニタリングデータをレポートする方法について説明します。
エンドポイント
カスタムイベントをレポートするエンドポイントの詳細については、「付録3: モニタリングデータをレポートするエンドポイント」をご参照ください。
リクエスト構文
次のコードは、モニタリングデータのレポートに使用されるHTTPリクエストの構文を示しています。
POST /メトリック /カスタム /アップロードHTTP/1.1
権限付与:<AuthorizationString>
Content-Length:<Content Length>
Content-MD5:<コンテンツMD5>
Content-Type:application/json
日付:<GMT日付>
ホスト: 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リクエストのヘッダーとパラメーターを次の表に示します。
- リクエストヘッダー
ヘッダー データ型 説明 例 承認 String AccessKeyID:SignString
形式の権限付与文字列。- AccessKey IDの取得方法については、「AccessKeyペアの取得」をご参照ください。
- 文字列に署名する方法の詳細については、CloudMonitorはHMAC-SHA1署名アルゴリズムをサポートしていますか?
testKey:F86ADF652A6466FCCD860B867D9518D48C24E7F6
Content-Length Long RFC 2616で定義されているHTTPリクエストのボディ長。 リクエストボディは、UTF-8でエンコードされたバイト数で測定されます。 説明 このヘッダーは、リクエストに本文がある場合にのみ必要です。151
Content-MD5 String HTTPリクエストボディのMD5ハッシュ。 MD5ハッシュは、大文字と数字で構成される文字列です。 説明 このヘッダーは、リクエストに本文がある場合にのみ必要です。215614AA47799058C009D3E20B19B8 3A
Content-Type String HTTPリクエストで送信されるコンテンツのタイプ。 値を application/json
に設定します。アプリケーション /json
日付 String HTTPリクエストの標準タイムスタンプヘッダー。 このタイムスタンプヘッダーは、RFC 1123で定義された時間形式に従い、UTC標準時間を使用します。 例:
月曜日、1月3日2010 08:33:47 UTC
8月27日金曜日2021 06:33:55 GMT
ホスト String HTTPリクエストの完全なホスト名。 このヘッダーには、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 署名アルゴリズム。 CloudMonitorは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 必須 メトリックの名前。 詳細については、「付録1: メトリック」をご参照ください。 dimensions オブジェクト 可 モニタリングデータを照会するリソースを指定するディメンション。 値は、キーと値のペアのコレクションです。 典型的なペアは
instanceId:i-abcdefgh12 ****
です。time String 必須 メトリックが生成されたときのタイムスタンプ。 有効な値: - yyyyMMdd'T'HHmmss.SSSZ
例: 20171012T132456.888 + 0800
- long
例: 1508136760000
type Int 可 報告されたデータのタイプ。 有効な値: 0と1。 値0は生データを示し、値1は集計データを示します。
60秒と300秒の両方の集計期間で集計データをレポートすることを推奨します。 それ以外の場合、7日を超える期間のモニタリングデータをクエリすることはできません。
period String 任意 集計期間。 単位は秒です。
typeパラメーターが1に設定されている場合、periodパラメーターが必要です。 有効な値:- 60
- 300
values オブジェクト 可 メトリック値のコレクション。 typeパラメーターが0に設定されている場合、このパラメーターのキーは指定された値に設定する必要があります。 CloudMonitorは、各集計期間の生データを集計して、最大値、カウント、合計値などの複数の統計値を生成します。
- yyyyMMdd'T'HHmmss.SSSZ
レスポンスの例
次のコードは、モニタリングデータをレポートするHTTPリクエストに対するサンプルレスポンスを示しています。
{
"code":"200",// HTTPステータスコード200は、リクエストが成功したことを示します。
"msg":"" // モニタリングデータが報告された場合、値は空です。
}