t2.micro で運用していた当サイトですが、大したリソースも使っていないことが判ったので t2.nano に移行しました。
その際、Cloudwatchのカスタムメトリクスが取得できてなくて「あれ?あれ?」となったので、誰かのお役に立てばと。

事前にやったこと

  • カスタムメトリクスの取得設定をしているEC2からAMIを作成
  • 取得した AMI を使って、t2.nano インスタンスを作成

ちゃんとマニュアルに書いています

結果的に、マニュアルを読めばちゃんと書いていたんですが、、、

スクリプトパッケージに含まれる CloudWatchClient.pm モジュールは、インスタンスのメタデータをローカルでキャッシュします。スクリプトを実行しているインスタンスから AMI を作成すると、キャッシュ TTL (デフォルト: 6 時間、Auto Scaling グループでは 24 時間) 以内にこの AMI から起動したすべてのインスタンスは、元のインスタンスの ID を使用してメトリクスを出力します。キャッシュ TTL 期間が経過した後は、スクリプトは新しいデータを取得し、スクリプトは現在のインスタンスの ID を使用します。これをすぐに修正するには、$ rm /var/tmp/aws-mon/instance-id を使用してキャッシュされたデータを削除します。

ということです。なので、特段急がない方はデフォ6時間経過後、勝手に再作成されます。急ぎ変更したければキャッシュデータの /var/tmp/aws-mon/instance-id ファイルを削除してね、ということでした。