share facebook facebook2 twitter menu hatena pocket slack

2013.03.29 FRI

Python版AWSコマンドラインツールでCloudWatchのメトリックス情報を取得

鈴木 宏康

WRITTEN BY鈴木 宏康

表題の件に関して、今回取り扱う課題は以下になります。

  • –dimensionsの指定方法
  • dateコマンドのフォーマットと時刻(相対的)の指定方法
  • jqの出力のダブルクウォートを削除(“10″→10)

Python版AWSコマンドラインツールでCloudWatchのメトリックス情報を取得する方法は下記の通りです。


# aws cloudwatch get-metric-statistics
> --namespace AWS/EC2
> --metric-name CPUUtilization
> --dimensions '{"name":"InstanceId","value":"i-xxxxxxxx"}'
> --statistics Average
> --period 60
> --start-time `date -u -d '10 minutes ago' +%Y-%m-%dT%TZ`
> --end-time `date -u +%Y-%m-%dT%TZ`
{
"Label": "CPUUtilization",
"ResponseMetadata": {
"RequestId": "e54a59ca-95f4-11e2-8103-6f7ec19b50ca"
},
"Datapoints": [
{
"Timestamp": "2013-03-26T09:04:00Z",
"Average": "12.662",
"Unit": "Percent"
},
{
"Timestamp": "2013-03-26T08:59:00Z",
"Average": "1.334",
"Unit": "Percent"
}
]
}

jqを利用して最初のデータの値のみダブルクウォートを削除した形で出力する場合は、下記となります。


# aws cloudwatch get-metric-statistics
> --namespace AWS/EC2
> --metric-name CPUUtilization
> --dimensions '{"name":"InstanceId","value":"i-xxxxxxxx"}'
> --statistics Average
> --period 60
> --start-time `date -u -d '10 minutes ago' +%Y-%m-%dT%TZ`
> --end-time `date -u +%Y-%m-%dT%TZ`
> | jq '.Datapoints[0] | .Average'
> | cut -d" -f2
3.338

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら

鈴木 宏康

鈴木 宏康

愛知県生まれ。東京工業大学大学院修士課程修了。在学時より、ベンチャー企業でインターネットに関する業務に携わり、現在はクラウド(主にAmazon Web Services)上での開発・運用を軸とした事業の、業務の中心として活躍。