目次
サンプル | 目的 |
Athenaテーブルを設定する | |
Athenaテーブルを確認する | |
AthenaのSQL例 | |
AthenaのデータをSQLで確認する | |
ワークグループを使用する |
目的
- CloudTrailのデータをAthenaテーブルに入れSQLで確認できます。
- CloudTrail Lakeと異なり過去のデータも確認できます。
- クエリでスキャンされるデータ量に基づいて課金されます。
(スキャンされたデータ 1 TB あたり 5.00USD)
https://aws.amazon.com/jp/athena/pricing/ - データイベントはWeb画面のイベント履歴上に出力されませんがAthenaでは表示されます。
https://aws.amazon.com/jp/premiumsupport/knowledge-center/cloudtrail-data-management-events/?utm_source=pocket_mylist
確認する対象となるCloudtrailの証跡が必要です。証跡が無い場合は作成します。
→証跡はS3に作成され90日以上の保存が可能です。S3の保存料金はかかります。
Athenaテーブルを設定する
1.検索入力欄で「CloudTrail」と入力し、表示された「CloudTrail」をクリックします。
※東京リージョンを使用している場合は、東京リージョンであることを確認します。
2.「イベント履歴」をクリックします。
3.「Athenaテーブルを作成」をクリックします。
4.ストレージの場所(設定した証跡のS3の場所)を選択します。
テーブルのCreate文は自動で生成されます。「テーブルの作成」をクリックします。
5.検索入力欄で「Athena」と入力し、Athenaの画面に遷移します。
クエリエディタをクリックし、「設定を表示」をクリックします。
※「最初のクエリを実行する前に、S3でクエリ結果の場所を設定する必要があります。」が表示されるので設定します。
6.「管理」をクリックします。
7.「S3を参照」をクリックしてクエリ結果の場所(aws-athena-query-resuts-***)を指定します。
予期されるバケット所有者はログインしたAWSアカウントIDを指定します。
保存を押すとSQLを実行できるようになります。
AthenaのSQL例
日時で対象を絞る+eventTime の降順にする
where eventTime >= '2022-07-07 00:00:00' and eventTime < '2022-08-19 00:00:00'
order by eventTime desc
s3イベントを対象にする + 出力件数を10件にする
where eventsource = 's3.amazonaws.com'
limit 10;
対象のS3のバケットを指定する
and requestparameters LIKE '%test-s3-data-2022%'
※test-s3-data-2022はS3のバケットです。
Athenaテーブルを確認する
1.画面左のデータソースをクリックします。
2.データソース名のリンクをクリックします。
※データソースは、以下のようにのデータ元の選択候補として複数種類から選択して作成できます。
3.データベース名が表示されます。defaultという名前になっています。
データベース名のリンクをクリックします。
4.テーブル名が表示されます。テーブル名のリンクをクリックします。
5.テーブルの詳細と列の情報が表示されます。
AthenaのデータをSQLで確認する
1.Athenaの画面のクエリエディタをクリックしエディタタブをクリックします。
SQL文のfromの後のテーブル名は、画面左下のテーブルの下にあるcloudtrail_logs_aws_cloudtrail_logs_***をコピペして指定します。
2.「クエリ」の箇所にSQLを入力できます。
件数が多い場合は、eventTimeで日時の範囲を指定します。
where eventTime >= '2022-07-07 00:00:00' and eventTime < '2022-08-19 00:00:00'
3.実行結果は下にスクロールすると表示されます。
「結果をダウンロード」ボタンからデータをCSV形式でダウンロードできます。
S3にも実行した結果は保存されておりダウンロードできます。
ワークグループを使用する
1.画面左のワークグループをクリックします。
2.ワークグループの一覧が表示されます。primaryはデフォルトで最初からあります。
ワークグループを作成できます。ワークグループのtest1を作成しました。
3.クエリエディタの画面を表示します。ワークグループの選択をprimaryにしています。
使用しているタブが複数あります。
4.ワークグループの選択をtest1にするとタブがprimaryとは別になります。
関連の記事