【AWS】CloudTrailとCloudWatch Logsを連携しCloudWatchにてAWS管理イベントを監視する方法

# 目的
CloudTrailとCloudWatch Logsを連携しCloudWatchにてAWS管理イベントを監視する方法を記載する。
AWS管理イベントとしては、セキュリティグループの作成、削除を例とする。

# 想定読者
CloudTrailでモニタリングしたAWS管理イベントを監視してメールで通知させたい方

# 手順
手順としては以下を想定しております。

1. 証跡の作成
1. メトリクスの作成
1. アラームの作成


# 1. 証跡の作成
CloudTrailを開き、「証跡の作成」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/9d2524ac-c7a2-b434-2a97-190653788bf7.png)

S3バケットが必要になるため、新規作成または既存のS3バケットを利用します。
「ログファイルの SSE-KMS 暗号化」、「SNS通知の配信」は検証では不要ですのでチェックを外します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/94ddff34-bdbb-e2bf-a65c-1182016d5269.png)

「CloudWatch Logs - オプション」を有効にし、「ロググループ名」、「IAMロール」を新規作成または既存のものを利用し「次へ」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/6e196849-2da6-6958-35b5-c265b027a77b.png)

管理イベントにチェックが入っていることを確認し「次へ」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/40345588-5a8a-7186-aed0-d122e5b21658.png)
「証跡の作成」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/df4ace26-7c75-9679-0684-9b06d3455695.png)

# 2. メトリクスの作成
CloudWatchを開き、「ロググループ」にて上記1にて作成したロググループを選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/65e4b794-70ff-f3d8-34ef-c6fc980bffa3.png)

メトリクスフィルターを選択し、「メトリクスフィルターを作成」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/b385087e-87da-eb0d-433e-35b1d53c7a50.png)

今回は例としてセキュリティグループの作成、削除を監視したいため、以下の内容をフィルターパターンに入力し、「Next」を押下します。
```
{ ($.eventName = CreateSecurityGroup) || ($.eventName = DeleteSecurityGroup) }
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/c6d71f71-8b2b-84fa-d963-026e4092652f.png)
フィルタ名、メトリクス名前空間を入力し、メトリクス値を「1」にし、「Next」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/c3792b3e-d549-0947-1c5c-edadf7699f30.png)
「メトリクスフィルターを作成」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/8fc509d3-04fc-c0d4-f9cf-0343da7aea45.png)

# 3. アラームの作成
作成したメトリクスフィルターを選択し、「アラームを作成」を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/d89ddeee-362f-128f-7533-d3526ec82b5d.png)

メトリクスはデフォルトのままとします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/79a771dc-3b70-20be-e3a7-73d8c80bcdf4.png)

しきい値の種類を「静的」にし、アラーム条件を「以上」にし、しきい値を「1」にします。
その他の設定にて、「アラームを実行するデータポイント」は「1 / 1」とします。
欠落データの処理を「欠落データを適正(しきい値を超えていない)として処理」にし、「次へ」を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/a8b97b90-6270-0960-3abe-a61db8a1f9ea.png)

「アラーム状態」にチェックを入れ、SNSトピックを選択し、「次へ」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/f3050748-7cda-a963-8716-b2e7fe2f18fc.png)

アラーム名とアラームの説明を入力し、「次へ」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/1800820b-1192-7bba-7724-5bf0b845df31.png)

プレビューと作成にて、「アラームの作成」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/c87c9c1f-5d4e-5981-d228-431dd8a60474.png)

アラームが作成されます。
セキュリティグループを作成後にメールが届きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/052b1ee1-9b73-e762-c190-e12c263a26e1.png)

# 参考
以下のURLが参考になります。
https://docs.aws.amazon.com/ja_jp/awscloudtrail/latest/userguide/cloudwatch-alarms-for-cloudtrail.html#cloudwatch-alarms-for-cloudtrail-security-group
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html