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?

CloudWatch LogにSSMエージェントのログを送る方法について

1
Last updated at Posted at 2026-02-26

はじめに

AWS Systems Manager (SSM) エージェントを導入した際、そのログをCloudWatch Logに送る仕組みを構築しました。
本記事では、その設定手順について解説します。

前提条件

・EC2インスタンスにSSMエージェントが導入されていること
・EC2のOSはWindowsを想定
・EC2にRDPできること
・CloudWatchの操作権限があること

CloudWatchでロググループを作成する

まずCloudWatchにロググループを作成します。
CloudWatch > ログ管理 > ロググループを作成をクリックします
ロググループ.png

次にロググループ名を入力します。
ここでは「ssmagent-logs」として、作成をクリックします。
ロググループ名.png

ロググループ「ssmagent-logs」が作成されました。
というメッセージが出れば作成完了です。

スクリーンショット 2026-02-26 213126.png

CloudWatch > ログ管理 > ロググループ > ssmagent-logsをクリックすると
まだログストリーム内にログがないことが分かります。
スクリーンショット 2026-02-26 213153.png

SSMエージェントのseelog.xmlファイルを編集

次に、対象のEC2インスタンスにログインして、SSMディレクトリ配下の「seelog.xml.template」ファイルを編集します。
本手順ではFleetmaangerを使って、インスタンスにRDPしてファイルを編集しています。
※Fleetmaangerの部分の手順は割愛します。

RDP後エクスプローラーで「%ProgramFiles%\Amazon\SSM\」と検索しSSMディレクトリに移動します。
SSMディレクトリ.png

SSMのディレクトリ配下に「seelog.xml.template」のファイルがあることを確認します。

こちらのファイルをメモ帳などのエディタを使って開きます。
このファイル内のclosing </filter>の後に設定を追加します。

設定追加前
    <outputs formatid="fmtinfo">
        <console formatid="fmtinfo"/>
        <rollingfile type="size" filename="{{LOCALAPPDATA}}\Amazon\SSM\Logs\{{EXECUTABLENAME}}.log" maxsize="30000000" maxrolls="5"/>
        <filter levels="error,critical" formatid="fmterror">
            <rollingfile type="size" filename="{{LOCALAPPDATA}}\Amazon\SSM\Logs\errors.log" maxsize="10000000" maxrolls="5"/>
        </filter>
    </outputs>
追加する設定
 <custom name="cloudwatch_receiver" formatid="fmtdebug" data-log-group="your-CloudWatch-log-group-name"/>

※your-CloudWatch-log-group-name部分に作成したCloudWatchロググループ名を記載します。
本記事の場合は以下になります。

<custom name="cloudwatch_receiver" formatid="fmtdebug" data-log-group="ssmagent-logs"/>

以下の様に設定を追加し、ファイル名を「seelog.xml」として保存します。

設定追加後
   <outputs formatid="fmtinfo">
        <console formatid="fmtinfo"/>
        <rollingfile type="size" filename="{{LOCALAPPDATA}}\Amazon\SSM\Logs\{{EXECUTABLENAME}}.log" maxsize="30000000" maxrolls="5"/>
        <filter levels="error,critical" formatid="fmterror">
            <rollingfile type="size" filename="{{LOCALAPPDATA}}\Amazon\SSM\Logs\errors.log" maxsize="10000000" maxrolls="5"/>
   </filter>
   <custom name="cloudwatch_receiver" formatid="fmtdebug" data-log-group="ssmagent-logs"/>
</outputs>

同じディレクトリに「seelog.xml」ファイルができていることを確認します。

SSMエージェントの再起動とログの確認

次にSSMエージェントを再起動します。
まず現在の状態を確認します。
PowerShellを使い状態を確認します。

Get-Service AmazonSSMAgent

Status   Name               DisplayName
------   ----               -----------
Running  AmazonSSMAgent     Amazon SSM Agent

Statusが「Running」でSSMエージェントが動いていることが分かります。
次にSSMエージェントを再起動します。

Restart-Service AmazonSSMAgent
WARNING: Waiting for service 'Amazon SSM Agent (AmazonSSMAgent)' to stop...
WARNING: Waiting for service 'Amazon SSM Agent (AmazonSSMAgent)' to stop...
WARNING: Waiting for service 'Amazon SSM Agent (AmazonSSMAgent)' to stop...

数秒程度で再起動が行われます。
再度SSMエージェントの状態を確認すると、RunningでSSMエージェントが動いていることが分かります。

Get-Service AmazonSSMAgent

Status   Name               DisplayName
------   ----               -----------
Running  AmazonSSMAgent     Amazon SSM Agent

SSMエージェントの再起動を実施した後に
CloudWatch > ログ管理 > ロググループ > ssmagent-logsをクリックすると
ログストーリムにログができていて、ログが取れていることが分かります。
ログ生成.png

まとめ

今回は、SSMエージェントのログをCloudWatch Logsへ転送する設定を行いました。
SSMエージェントのログをCloudWatch Logsへログを飛ばしておくことで、万が一の際も過去のログを追うことができ、原因究明の役に立つ場面などもあるかと思います。
本記事がどなたかの役に立てば幸いです。

参考サイト

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?