Help us understand the problem. What is going on with this article?

CloudWathLogs Agentの最小セットアップ:Windows

More than 1 year has passed since last update.

やること

CloudWatchLogsで、Windowsイベントログを見たい場合の最小(?)セットアップ方法をまとめてみた。
ここに表示されます
ここに、Windowsイベントログが表示されるというアレです。

概要

  1. AWS管理コンソールでやる事
    1-1, 【IAM】EC2に割り当てるIAMロールを準備する
    1-2, 【EC2】インスタンスにIAMロールを割り当てる

  2. WindowsOS上でやる事
    2-1, EC2インスタンス内で、Agentアプリインストール
    2-2, コンフィグファイル作成・設置
    2-3, コンフィグファイル適用・サービス起動

おはり

1-1, 【IAM】EC2に割り当てるIAMロールを準備する

ポリシーは👇

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents",
                "logs:DescribeLogStreams"
            ],
            "Resource": [
                "arn:aws:logs:*:*:*"
            ]
        }
    ]
}

1-2, 【EC2】インスタンスにIAMロールを割り当てる

IAM ロールの割り当て/置換 で1-1のロールをEC2インスタンスに割り当てる

2-1, EC2インスタンス内で、Agentアプリインストール

ダウンロードリンクは、コマンドラインを使用して CloudWatch エージェントをダウンロードおよび設定する

Windowsのインストーラはこのあたり

2-2, コンフィグファイル作成・設置

config.json
{
  "logs": {
    "logs_collected": {
      "windows_events": {
        "collect_list": [
          {
            "event_format": "xml",
            "event_levels": [
              "WARNING",
              "ERROR",
              "CRITICAL"
            ],
            "event_name": "System",
            "log_group_name": "hogeHoge",
            "log_stream_name": "{local_hostname}"
          }
        ]
      }
    }
  }
}

AWS管理コンソールに、ロググループ名「hogeHoge」に、
「Windowsホスト名(local_hostname)」グループが作成されて
その中に、Windowsイベントログのうち、警告・エラー・クリティカルのSystemログが転送される
という意味です。

このファイルを
C:\Program Files\Amazon\AmazonCloudWatchAgent
におきます
ファイル名は、config.json としておく(次の項目で使う)

2-3, コンフィグファイル適用・サービス起動

PowerShellで

cd "C:\Program Files\Amazon\AmazonCloudWatchAgent"
.\amazon-cloudwatch-agent-ctl.ps1 -a fetch-config -c file:config.json

これで、コンフィグファイルが適用(どこかにコピーされるてきな動き)されます。
正常に適用されると👇こんなメッセージになりまする。

Start configuration validation...
3019/08/35 00:01:01 Reading json config file path: C:\ProgramData\Amazon\AmazonCloudWatchAgent\Configs\file_config.json.
tmp ...
Valid Json input schema.
No csm configuration found.
No metric configuration found.
Configuration validation first phase succeeded
Configuration validation second phase succeeded
Configuration validation succeeded

で、Windowsサービスを起動します

Restart-Service -Name AmazonCloudWatchAgent

完成図

ここに表示されます
config.jsonで指定したロググループ名が表示されてます
スクリーンショット 2019-08-25 21.43.53.png
その中に、Windowsのコンピュータ名が表示されてます
スクリーンショット 2019-08-25 21.44.59.png
開くと、ログっぽいものが表示されてます。

取得したいログを増やす

config.jsonを修正
適用
サービス再起動
でできますー

できない場合

上記手順が完了すると、すぐにログが転送されるみたいです。
ロググループ名が表示されない場合は・・・

環境が正しいか確認

OSからインターネットに繋がる。もしくはVPCエンドポイントへ出力できる。

Agentログの確認

👇ここにあります
C:\ProgramData\Amazon\AmazonCloudWatchAgent\Logs

afukuma
AWS ソリューションアーキテクト 再現可能な小ネタを挙げます(GUI重視) VB.NET C# nodejs
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした