1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

CloudWatchのダッシュボードをCLIで設定する

Last updated at Posted at 2021-10-31

最近、仕事でCloudWatchのダッシュボードを設定する機会がありました。
しかし、Webコンソールで一つずつ設定するのはとても面倒に感じたので、aws cliを使用して設定していきます!

前提

今回は、事前にElastic Beanstalkで作成した環境(下記2点)をダッシュボードに設定する。
(こちらの監視対象環境はEC2でもRDSでも何でも良い)

Elastic Beanstalk
image.png

EC2 (Elastic Beanstalkで作成されたEC2)
image.png

json作成

widgetsという配列変数に、モニタリングしたい分だけ設定。
今回はメモリとディスクの統計情報をモニタリングできるようにする。

test.json
{
  "widgets": [
    {
      "type": "metric",
      "x": 0,
      "y": 0,
      "width": 6,
      "height": 6,
      "properties": {
        "view": "timeSeries",
        "stacked": false,
        "metrics": [
          [
            "AWS/EC2",
            "MemoryUtilization",
            "InstanceId",
            "i-0accd6fcf9ecc2d61"
          ]
        ],
        "region": "us-east-2"
      }
    },
    {
      "type": "metric",
      "x": 6,
      "y": 0,
      "width": 6,
      "height": 6,
      "properties": {
        "view": "timeSeries",
        "stacked": false,
        "metrics": [
          [
            "AWS/EC2",
            "DiskUsage",
            "InstanceId",
            "i-0accd6fcf9ecc2d61"
          ]
        ],
        "region": "us-east-2"
      }
    }
  ]
}

コマンド実行

サブコマンドput-dashboardでダッシュボードを登録し、--dashboard-nameオプションでダッシュボード名指定、--dashboard-bodyオプションで先ほど作成したjsonファイルを指定。

jsonファイルを指定方法は「file://ファイルパス」という形式。
そうじゃないと以下のエラーが出る。
An error occurred (InvalidParameterInput) when calling the PutDashboard operation: The field DashboardBody must be a valid JSON object

ターミナル
$ aws cloudwatch put-dashboard --dashboard-name test --dashboard-body file://test.json
{
    "DashboardValidationMessages": []
}

ダッシュボードを確認

testダッシュボードが作成されている。

image.png

testダッシュボードの中に先ほど設定したメモリとディスクの統計情報のモニタリングができるようになっている。
※インスタンスに何もしてないのでデータは無いが・・

image.png

終わりに

とりあえず、CLIでCloudWatchのダッシュボードを作成できました。
しかし、そもそもCloudWatchに関しての理解が乏しいので、そこをしっかり勉強して使いこなせるようになりたいです。

参考

https://dev.classmethod.jp/articles/cloudwatch-dashboard-api-using-awscli/
https://aws.amazon.com/jp/blogs/news/new-api-cloudformation-support-for-amazon-cloudwatch-dashboards/

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?