EC2Configのメジャーバージョンが3から4に上がり、2016.11.23以降のAMIからWindowsサーバをlaunchするとv4のEC2Configがプリインストールされているようです。

http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/windows-ami-version-history.html

367573e6-s

v4の変更点を公式ページで確認すると、SSM Agentなるものが新たにインストールされ、諸々の機能がそれに統合されたようです。

http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/UsingConfig_Install.html

f231d907-s

v4のEC2Configでcloudwatch logsの設定を以下のいつもの手順で試みましたが、いっこうにログが打ち上げられませんでした。

http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/send_logs_to_cwl.html

そこでサポートセンターに確認しましたところ、手順に変更があることが分かりました。

(調査していただき感謝です)
AWS公式ページhttp://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/windows-ami-version-history.html#win2k16-amisにも記載されておりました。

  1. AWS.EC2.Windows.CloudWatch.json ファイルについて
    a. 一度もEC2ConfigあるいはSSMエージェントからの送信を設定されていない場合、サンプル JSON ファイル(https://s3.amazonaws.com/ec2-downloads-windows/CloudWatchConfig/AWS.EC2.Windows.CloudWatch.json)をダウンロードします。
    b. 既存のJSONファイルがある場合、C:\Program Files\Amazon\Ec2ConfigService\Settings のJSONファイルを利用します。
  2. C:\Program Files\Amazon\SSM\Plugins\awsCloudWatch に新規または既存のJSONファイルを配置します。
  3. JSONファイルをエディタで開きます。
  4. “IsEnabled”:true を 2行目に追加します。IsEnabled セクションが EngineConfiguration セクションと同じ階層にあることを確認します。

下記に例を示します。

作業前:

{
   "EngineConfiguration": {
     "PollInterval": "00:00:15",
     "Components": [
       {
         "Id": "ApplicationEventLog",
         "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch",
         "Parameters": {
           "LogName": "Application",
           "Levels": "1"
         }

…………. (抜粋)

     }
   }
}

作業後:

{
   "IsEnabled":true,
   "EngineConfiguration": {
     "PollInterval": "00:00:15",
     "Components": [
       {
         "Id": "ApplicationEventLog",
         "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch",
         "Parameters": {
           "LogName": "Application",
           "Levels": "1"
         }
…………. (抜粋)

    }
  }
  }
}

5.上記のステップが完了したら、Amazon SSM Agentサービスを再起動します。

新規でEC2を構築した際には上記の5の「Amazon SSM Agentサービスを再起動」のみで現象は解消しました。
>4. “IsEnabled”:true を 2行目に追加します。IsEnabled セクションが EngineConfiguration セクションと同じ階層にあることを確認します。
新規作成時には「”IsEnabled”:true」が自動で設定されていました。

「Amazon SSM Agentサービス」の再起動方法

Amazon SSM Agentサービスを再起動させる方法について。

まずGUIでの方法です。
以下の「Amazon SSM Agent」を再起動すれば出来ます。

635ffe5e-s

最後にpowershellで実行する方法。userdataやansibleの時はこちらを利用することになります。

Restart-Service AmazonSSMAgent.exe

以上です。

元記事はこちら

EC2ConfigがメジャーバージョンアップされてCloudwatch logsの設定手順が変わったようです