Lightsail のバケットアクセスログ記録の有効化
アクセスログは、Amazon Lightsail オブジェクトストレージサービスのバケットに対して行われたリクエストの詳細なレコードを提供します。アクセスのログは、多くのアプリケーションに役立ちます。例えば、アクセスのログ情報は、セキュリティやアクセスの監査に役立ちます。また、顧客基盤について知るうえでも役立ちます。
デフォルトでは、Lightsail によってバケットへのアクセスのログは収集されません。ログ記録を有効にすると、Lightsail は、ソースバケットのアクセスログを選択されたターゲットバケットに配信します。ソースバケットとターゲットバケットの両方が同じ AWS リージョンにあり、同じアカウントによって所有されている必要があります。
アクセスログのレコードには、バケットに対するリクエストの詳細が取り込まれます。この情報には、リクエストタイプ、リクエストで指定したリソース、リクエストを処理した日時などが含まれます。このガイドでは、Lightsail API、AWS Command Line Interface (AWS CLI)、または AWS SDK を使用してバケットへのアクセスログ記録を有効または無効にする方法について説明します。
ログ記録の基本の詳細については、「バケットのアクセスログ」を参照してください。
目次
アクセスログ記録のコスト
バケットに対してアクセスのログ記録を有効にしても追加料金はかかりません。ただし、システムがバケットに配信するログファイルのストレージ領域は消費されます。ログはいつでも削除できます。ログバケットのデータ転送が設定された月額許容範囲内にある場合、ログファイルの配信に対してデータ転送料金はかかりません。
ターゲットバケットでアクセスのログ記録が有効になっていない必要があります。ログの保存先のバケットとして、ソースバケットと同じリージョンにあるユーザー所有のバケットを指定できます。これにはソースバケット自体も含まれます。ただし、ログを管理しやすくするため、アクセスログは別のバケットに保存することをお勧めします。
AWS CLI を使用してアクセスログ記録を有効にする
バケットのアクセスログ記録を有効にするには、バケットがある各 AWS リージョン に専用のロギングバケットを作成することをお勧めします。その後、 アクセスログをその専用のロギングバケットに配信します。
AWS CLI を使用してアクセスログ記録を有効にするには、次の手順を実行します。
注記
この手順を続行する前に、AWS CLI をインストールして Lightsail 用に設定する必要があります。 詳細については、「 Lightsail で使用するために AWS CLI を設定する」を参照してください。
-
ローカルコンピュータでコマンドプロンプトまたはターミナルウィンドウを開きます。
-
次のコマンドを入力して、アクセスのログ記録を有効にします。
aws lightsail update-bucket --bucket-name
SourceBucketName
--access-log-config "{\"enabled\": true, \"destination\": \"TargetBucketName
\", \"prefix\": \"ObjectKeyNamePrefix/
\"}"コマンドで、次のサンプルテキストを独自のテキストに置き換えます。
-
sourceBucketName
- アクセスログが作成されるソースバケットの名前。 -
TargetBucketName
- アクセスログを保存するターゲットバケットの名前。 -
ObjectKeyNamePrefix/
- アクセスログのオプションのオブジェクトキー名のプレフィックス。このプレフィックスは、スラッシュ (/
) で終わる必要があります。
例
aws lightsail update-bucket --bucket-name
amzn-s3-demo-bucket1
--access-log-config "{\"enabled\": true, \"destination\": \"amzn-s3-demo-bucket2
\", \"prefix\": \"logs/amzn-s3-demo-bucket1/
\"}"この例では、
amzn-s3-demo-bucket1
はアクセスログを作成するソースバケット、amzn-s3-demo-bucket2
はアクセスログを保存する送信先バケット、logs/amzn-s3-demo-bucket1/
はアクセスログのオブジェクトキー名のプレフィックスです。コマンドを実行すると、次の例のような結果が表示されます。ソースバケットが更新され、アクセスログの生成が開始され、保存先バケットに保存されます。
-
AWS CLI を使用してのアクセスログ記録の無効化
AWS CLI を使用してアクセスログ記録を無効にするには、次の手順を実行します。
注記
この手順を続行する前に、AWS CLI をインストールして Lightsail 用に設定する必要があります。 詳細については、「 Lightsail で使用するために AWS CLI を設定する」を参照してください。
-
ローカルコンピュータでコマンドプロンプトまたはターミナルウィンドウを開きます。
-
次のコマンドを入力して、アクセスのログ記録を無効にします。
aws lightsail update-bucket --bucket-name
SourceBucketName
--access-log-config "{\"enabled\": false}"コマンドで、
SourceBucketName
をアクセスログを無効にするソースバケットの名前に置き換えます。例
aws lightsail update-bucket --bucket-name
amzn-s3-demo-bucket
--access-log-config "{\"enabled\": false}"コマンドを実行すると、次の例のような結果が表示されます。