良くは実行しないけど、使う時に忘れているのでコマンドそのままで備忘録。
定期的に実行して値をログに書いとけば、後でグラフも集計もできる。
ELB のバランシング数の取得
jqで整形して、バランシング数のみを取得
aws elb describe-instance-health
--profile プロファイル名
--load-balancer-name ELB名
| jq '.InstanceStates[]|{InstanceId, State}'
S3 の配置ファイル名一覧の取得
S3内にあるファイル名一覧を取得
aws s3
--recursive
--profile プロファイル名 ls バケット名
EC2 のCPU使用率の取得
2行取得して、jqで整形して、CSV化して、最後(最新)の1行の使用率のみを取得
aws cloudwatch get-metric-statistics
--namespace AWS/EC2
--profile プロファイル名
--metric-name CPUUtilization
--start-time date -u -d '9 minutes ago' +%Y-%m-%dT%TZ
--end-time date -u +%Y-%m-%dT%TZ
--period 300
--statistics Maximum
--dimensions Name=InstanceId,Value=インスタンス名
| jq -r '.Datapoints[] | [ .Timestamp ,.Maximum] | @csv'
| sort | tail -1 | cut -d',' -f2
RDS(segment-info)のCPU使用率の取得
2行取得して、jqで整形して、CSV化して、最後(最新)の1行の使用率のみを取得
aws cloudwatch get-metric-statistics
--namespace AWS/RDS
--profile プロファイル名
--metric-name CPUUtilization
--start-time date -u -d \'9 minutes ago\' +%Y-%m-%dT%TZ
--end-time date -u +%Y-%m-%dT%TZ
--period 300
--statistics Maximum
--dimensions="Name=DBInstanceIdentifier,Value=インスタンス名"
| jq -r '.Datapoints[] | [ .Timestamp ,.Maximum] | @csv'
| sort | tail -1 | cut -d',' -f2