

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Lightsail バケットログを使用してオブジェクトストレージアクセスを分析する
<a name="amazon-lightsail-bucket-access-log-format"></a>

アクセスログは、Amazon Lightsail オブジェクトストレージサービスのバケットに対して行われたリクエストの詳細なレコードを提供します。アクセスのログ記録を使用して、セキュリティとアクセスを監査し、顧客ベースを確認することができます。このセクションでは、アクセスログファイルの形式およびその他の詳細について説明します。ログ記録の基本の詳細については、「[バケットのアクセスログ](amazon-lightsail-bucket-access-logs.md)」を参照してください。　

アクセスのログファイルは、一連のログレコードを改行で区切って構成します。各ログレコードは 1 個のリクエストを表し、各フィールドをスペースで区切って構成します。

次に示すのは、5 個のログレコードで構成されるログの例です。

```
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be amzn-s3-demo-bucket [06/Feb/2019:00:00:38 +0000] 192.0.2.3 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be 3E57427F3EXAMPLE REST.GET.VERSIONING - "GET /amzn-s3-demo-bucket?versioning HTTP/1.1" 200 - 113 - 7 - "-" "S3Console/0.4" - s9lzHYrFp76ZVxRcpX9+5cjAnEH2ROuNkd2BHfIa6UkFVdtjf5mKR3/eTPFvsiP/XV/VLi31234= SigV2 ECDHE-RSA-AES128-GCM-SHA256 AuthHeader amzn-s3-demo-bucket.s3.us-west-1.amazonaws.com TLSV1.1
```

```
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be amzn-s3-demo-bucket [06/Feb/2019:00:00:38 +0000] 192.0.2.3 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be 891CE47D2EXAMPLE REST.GET.LOGGING_STATUS - "GET /amzn-s3-demo-bucket?logging HTTP/1.1" 200 - 242 - 11 - "-" "S3Console/0.4" - 9vKBE6vMhrNiWHZmb2L0mXOcqPGzQOI5XLnCtZNPxev+Hf+7tpT6sxDwDty4LHBUOZJG96N1234= SigV2 ECDHE-RSA-AES128-GCM-SHA256 AuthHeader amzn-s3-demo-bucket.s3.us-west-1.amazonaws.com TLSV1.1
```

```
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be amzn-s3-demo-bucket [06/Feb/2019:00:00:38 +0000] 192.0.2.3 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be A1206F460EXAMPLE REST.GET.BUCKETPOLICY - "GET /amzn-s3-demo-bucket?policy HTTP/1.1" 404 NoSuchBucketPolicy 297 - 38 - "-" "S3Console/0.4" - BNaBsXZQQDbssi6xMBdBU2sLt+Yf5kZDmeBUP35sFoKa3sLLeMC78iwEIWxs99CRUrbS4n11234= SigV2 ECDHE-RSA-AES128-GCM-SHA256 AuthHeader amzn-s3-demo-bucket.s3.us-west-1.amazonaws.com TLSV1.1
```

```
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be amzn-s3-demo-bucket [06/Feb/2019:00:01:00 +0000] 192.0.2.3 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be 7B4A0FABBEXAMPLE REST.GET.VERSIONING - "GET /amzn-s3-demo-bucket?versioning HTTP/1.1" 200 - 113 - 33 - "-" "S3Console/0.4" - Ke1bUcazaN1jWuUlPJaxF64cQVpUEhoZKEG/hmy/gijN/I1DeWqDfFvnpybfEseEME/u7ME1234= SigV2 ECDHE-RSA-AES128-GCM-SHA256 AuthHeader amzn-s3-demo-bucket.s3.us-west-1.amazonaws.com TLSV1.1
```

```
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be amzn-s3-demo-bucket [06/Feb/2019:00:01:57 +0000] 192.0.2.3 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be DD6CC733AEXAMPLE REST.PUT.OBJECT s3-dg.pdf "PUT /amzn-s3-demo-bucket/s3-dg.pdf HTTP/1.1" 200 - - 4406583 41754 28 "-" "S3Console/0.4" - 10S62Zv81kBW7BB6SX4XJ48o6kpcl6LPwEoizZQQxJd5qDSCTLX0TgS37kYUBKQW3+bPdrg1234= SigV4 ECDHE-RSA-AES128-SHA AuthHeader amzn-s3-demo-bucket.s3.us-west-1.amazonaws.com TLSV1.1
```

**注記**  
任意のログレコードフィールドを `–` (ダッシュ) に設定して、データが不明または使用不可であること、またはフィールドがこのリクエストに適用されなかったことを示すことができます。

**目次**
+ [ログレコードフィールド](#log-record-fields)
+ [コピー操作の追加ログ記録](#additional-logging-for-copy-operations)
+ [カスタムアクセスログ情報](#custom-access-log-information)
+ [拡張可能なアクセスログの形式のプログラミングに関する考慮事項](#programing-considerations)

## ログレコードフィールド
<a name="log-record-fields"></a>

次のリストには、ログレコードのフィールドが説明されています。

**アクセスポイントの ARN (Amazon リソースネーム)**

リクエストのアクセスポイントの Amazon リソースネーム (ARN) です。アクセスポイントの ARN の形式が不正、または使用されていない場合、このフィールドには「−」が含まれます。アクセスポイントの詳細については、「[アクセスポイントを使用する](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)」を参照してください。ARN の詳細については、*AWS 全般リファレンス*で「[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)」に関するトピックを参照してください。

エントリ例

```
arn:aws:s3:us-east-1:123456789012:accesspoint/example-AP
```

**バケット所有者**

ソースバケット所有者の正規ユーザー ID。正規ユーザー ID は、別の形式の AWS アカウント ID です。正規ユーザー ID の詳細については、「AWS 全般のリファレンス」の「[AWS アカウント ID](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html)」を参照してください。アカウントの正規ユーザー ID を検索する方法については、「[AWS アカウントの正規ユーザー ID の検索](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html#FindingCanonicalId)」を参照してください。

エントリ例

```
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be
```

**バケット**

リクエストの処理ターゲットのバケットの名前。システムで受け取ったリクエストの形式に誤りがあり、バケットを特定できない場合、そのリクエストはアクセスログに表示されません。

エントリ例

```
amzn-s3-demo-bucket
```

**時間**

リクエストが受信された時間。これらの日付と時刻は協定世界時 (UTC) です。*strftime()* 用語を使用すると、形式は次のようになります: *[%d/%b/%Y:%H:%M:%S %z]*

エントリ例

```
[06/Feb/2019:00:00:38 +0000]
```

**リモート IP**

リクエスタの表面上のインターネットアドレス。中間プロキシやファイアウォールにより、リクエストを作成したマシンの実際のアドレスが不明確になる場合があります。

エントリ例

```
192.0.2.3
```

**リクエスタ**

リクエスタの正規ユーザー ID。認証されていないリクエストの場合は `-` です。リクエスタが IAM ユーザーの場合、このフィールドは、リクエスタの IAM ユーザー名と IAM ユーザーが所属する AWS ルートアカウントを返します。この識別子は、アクセスコントロールに使用されるものと同じです。

エントリ例

```
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be
```

**リクエスト ID**

各リクエストを一意に識別するために Lightsail で生成される文字列。

エントリ例

```
3E57427F33A59F07
```

**操作**

ここに表示されているオペレーションは、`SOAP.operation`、`REST.HTTP_method.resource_type`、`WEBSITE.HTTP_method.resource_type` または `BATCH.DELETE.OBJECT` と表示されます。

エントリ例

```
REST.PUT.OBJECT
```

**キー**

リクエストの URL エンコードされた「key」部分、オペレーションがキーパラメータを取らない場合は「−」。

エントリ例

```
/photos/2019/08/puppy.jpg
```

**Request-URI**

HTTP リクエストメッセージの Request−URI の部分。

エントリ例

```
"GET /amzn-s3-demo-bucket/photos/2019/08/puppy.jpg?x-foo=bar HTTP/1.1"
```

**HTTP ステータス**

レスポンスの HTTP ステータスの数値。

エントリ例

```
200
```

**エラーコード**

Amazon S3 [エラーコード](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingRESTError.html#ErrorCode)、またはエラーが発生しなかった場合は「-」。

エントリ例

```
NoSuchBucket
```

**送信バイト数**

送信されたレスポンスのバイト数 (HTTP プロトコルオーバーヘッドを除きます)。ゼロの場合は「−」。

エントリ例

```
2662992
```

**オブジェクトのサイズ**

該当するオブジェクトの合計サイズ。

エントリ例

```
3462992
```

**合計時間**

バケットから見た、リクエストの転送の時間数 (ミリ秒単位)。これは、リクエストが受信されてから、レスポンスの最終バイトが送信されるまでの時間を計測した値です。クライアント側での計測値は、ネットワーク遅延により長くなる場合があります。

エントリ例

```
70
```

**ターンアラウンド時間**

Lightsail でリクエストの処理に要した時間数 (ミリ秒単位)。これは、リクエストの最終バイトが受信されてから、レスポンスの先頭バイトが送信されるまでの時間を計測した値です。

エントリ例

```
10
```

**リファラー**

HTTP Referer ヘッダーの値 (存在する場合)。一般に、HTTP ユーザーエージェント (ブラウザなど) は、このヘッダーをリクエスト作成時のリンクページや埋め込みページの URL に設定します。

エントリ例

```
"http://www.amazon.com/webservices"
```

**ユーザーエージェント**

HTTP User−Agent ヘッダーの値。

エントリ例

```
"curl/7.15.1"
```

**バージョン ID**

リクエストのバージョン ID、または オペレーションが `versionId` パラメータを取らない場合は「`-`」。

エントリ例

```
3HL4kqtJvjVBH40Nrjfkd
```

**ホスト ID**

x-amz-id-2 または Lightsail で拡張されたリクエスト ID。

エントリ例

```
s9lzHYrFp76ZVxRcpX9+5cjAnEH2ROuNkd2BHfIa6UkFVdtjf5mKR3/eTPFvsiP/XV/VLi31234=
```

**署名バージョン**

署名バージョン `SigV2` か `SigV4` (リクエストの認証に使用)、または `-` (認証されていないリクエストの場合)。

エントリ例

```
SigV2
```

**暗号スイート**

HTTPS リクエストに対してネゴシエートされた Secure Sockets Layer (SSL) 暗号、または HTTP リクエストに対してネゴシエートされた `-`。

エントリ例

```
ECDHE-RSA-AES128-GCM-SHA256
```

**認証タイプ**

使用されるリクエスト認証のタイプ。認証ヘッダーは `AuthHeader`、クエリ文字列 (署名付き URL) は `QueryString`、認証されていないリクエストには `-`。

エントリ例

```
AuthHeader
```

**ホストヘッダー**

Lightsail への接続に使用するエンドポイント。

エントリ例

```
s3.us-west-2.amazonaws.com
```

**TLS のバージョン**

クライアントによってネゴシエートされた Transport Layer Security (TLS) バージョン。値は `TLSv1`、`TLSv1.1`、`TLSv1.2`、`-` のいずれかです (TLS を使用しなかった場合)。

エントリ例

```
TLSv1.2
```

## コピーオペレーションの追加ログ記録
<a name="additional-logging-for-copy-operations"></a>

コピーオペレーションには `GET` と `PUT` が含まれます。このため、コピーオペレーションの実行時には 2 つのログレコードが記録されます。前述のセクションでは、コピーオペレーションの `PUT` 部分に関連するフィールドを説明しています。次のリストでは、コピーオペレーションの `GET` 部分に関連するフィールドを説明します。

**バケット所有者**

コピーされたオブジェクトを格納するバケットの正規ユーザー ID。正規ユーザー ID は、別の形式の AWS アカウント ID です。正規ユーザー ID の詳細については、「AWS 全般のリファレンス」の「[AWS アカウント ID](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html)」を参照してください。アカウントの正規ユーザー ID を検索する方法については、「[AWS アカウントの正規ユーザー ID の検索](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html#FindingCanonicalId)」を参照してください。

エントリ例

```
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be
```

**バケット**

コピーターゲットのオブジェクトを格納するバケットの名前。

エントリ例

```
amzn-s3-demo-bucket
```

**時間**

リクエストが受信された時間。これらの日付と時刻は協定世界時 (UTC) です。`strftime()` terminology を使用した形式は次のようになります: `[%d/%B/%Y:%H:%M:%S %z]`

エントリ例

```
[06/Feb/2019:00:00:38 +0000]
```

**リモート IP**

リクエスタの表面上のインターネットアドレス。中間プロキシやファイアウォールにより、リクエストを作成したマシンの実際のアドレスが不明確になる場合があります。

エントリ例

```
192.0.2.3
```

**リクエスタ**

リクエスタの正規ユーザー ID。認証されていないリクエストの場合は `-` です。リクエスタが IAM ユーザーの場合、このフィールドは、リクエスタの IAM ユーザー名と IAM ユーザーが所属する AWS ルートアカウントと共に表示します。この識別子は、アクセスコントロールに使用されるものと同じです。

エントリ例

```
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be
```

**リクエスト ID**

各リクエストを一意に識別するために Lightsail で生成される文字列。

エントリ例

```
3E57427F33A59F07
```

**操作**

ここに表示されているオペレーションは、`SOAP.operation`、`REST.HTTP_method.resource_type`、`WEBSITE.HTTP_method.resource_type` または `BATCH.DELETE.OBJECT` と表示されます。

エントリ例

```
REST.COPY.OBJECT_GET
```

**キー**

コピーターゲットのオブジェクトのkey」部分。オペレーションがキーパラメータを取らない場合は「−」。

エントリ例

```
/photos/2019/08/puppy.jpg
```

**Request-URI**

HTTP リクエストメッセージの Request−URI の部分。

エントリ例

```
"GET /amzn-s3-demo-bucket/photos/2019/08/puppy.jpg?x-foo=bar"
```

**HTTP ステータス**

コピーオペレーションの `GET` 部分の HTTP ステータスの数値。

エントリ例

```
200
```

**エラーコード**

コピーオペレーションの `GET` 部分の Amazon S3 エラーコード、またはエラーがない場合は「`-`」。

エントリ例

```
NoSuchBucket
```

**送信バイト数**

送信されたレスポンスのバイト数 (HTTP プロトコルオーバーヘッドを除きます)。ゼロの場合は「−」。

エントリ例

```
2662992
```

**オブジェクトのサイズ**

該当するオブジェクトの合計サイズ。

エントリ例

```
3462992
```

**合計時間**

バケットから見た、リクエストの転送の時間数 (ミリ秒単位)。これは、リクエストが受信されてから、レスポンスの最終バイトが送信されるまでの時間を計測した値です。クライアント側での計測値は、ネットワーク遅延により長くなる場合があります。

エントリ例

```
70
```

**ターンアラウンド時間**

Lightsail でリクエストの処理に要した時間数 (ミリ秒単位)。これは、リクエストの最終バイトが受信されてから、レスポンスの先頭バイトが送信されるまでの時間を計測した値です。

エントリ例

```
10
```

**リファラー**

HTTP Referer ヘッダーの値 (存在する場合)。一般に、HTTP ユーザーエージェント (ブラウザなど) は、このヘッダーをリクエスト作成時のリンクページや埋め込みページの URL に設定します。

エントリ例

```
"http://www.amazon.com/webservices"
```

**ユーザーエージェント**

HTTP User−Agent ヘッダーの値。

エントリ例

```
"curl/7.15.1"
```

**バージョン ID**

コピー対象のオブジェクトのバージョン ID、または `x-amz-copy-source` ヘッダーでコピー元の一部として `versionId` パラメータを指定しなかった場合は「`-`」。

エントリ例

```
3HL4kqtJvjVBH40Nrjfkd
```

**ホスト ID**

x-amz-id-2 または Lightsail で拡張されたリクエスト ID。

エントリ例

```
s9lzHYrFp76ZVxRcpX9+5cjAnEH2ROuNkd2BHfIa6UkFVdtjf5mKR3/eTPFvsiP/XV/VLi31234=
```

**署名バージョン**

署名バージョン `SigV2` か `SigV4` (リクエストの認証に使用)、または `-` (認証されていないリクエストの場合)。

エントリ例

```
SigV2
```

**暗号スイート**

HTTPS リクエストに対してネゴシエートされた Secure Sockets Layer (SSL) 暗号、または HTTP リクエストに対してネゴシエートされた `-`。

エントリ例

```
ECDHE-RSA-AES128-GCM-SHA256
```

**認証タイプ**

使用されるリクエスト認証のタイプ。認証ヘッダーは `AuthHeader`、クエリ文字列 (署名付き URL) は `QueryString`、認証されていないリクエストには `-`。

エントリ例

```
AuthHeader
```

**ホストヘッダー**

Lightsail への接続に使用するエンドポイント。

エントリ例

```
s3.us-west-2.amazonaws.com
```

**TLS のバージョン**

クライアントによってネゴシエートされた Transport Layer Security (TLS) バージョン。値は `TLSv1`、`TLSv1.1`、`TLSv1.2`、`-` のいずれかです (TLS を使用しなかった場合)。

エントリ例

```
TLSv1.2
```

## カスタムアクセスログ情報
<a name="custom-access-log-information"></a>

リクエストのアクセスログレコードに保存するカスタム情報を含めることができます。これを行うには、リクエストの URL にカスタムクエリ文字列パラメータを追加します。Lightsail は「x-」で始まるクエリ文字列パラメータを無視しますが、ログレコードの `Request-URI` フィールドの一部として、リクエストのアクセスログレコードにそれらのパラメータを含めます。

例えば、`GET` の `"s3.amazonaws.com/amzn-s3-demo-bucket/photos/2019/08/puppy.jpg?x-user=johndoe"` リクエストは、`"s3.amazonaws.com/amzn-s3-demo-bucket/photos/2019/08/puppy.jpg"` のリクエストと同じように動作します。ただし 、`"x-user=johndoe"` 文字列は関連付けられたログレコードの `Request-URI` フィールドに含まれている点が異なります。この機能は REST インターフェイスでのみ利用できます。

## 拡張可能なアクセスログの形式のプログラミングに関する考慮事項
<a name="programing-considerations"></a>

場合によっては、新しいフィールドを各行末に追加することで、アクセスログレコードの形式を拡張することがあります。したがって、アクセスログを解析するコードは、理解できない可能性のある後続フィールドを処理するよう作成する必要があります。