

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Akses log (log standar)
<a name="AccessLogs"></a>

Anda dapat mengonfigurasi CloudFront untuk membuat file log yang berisi informasi terperinci tentang setiap permintaan pengguna (penampil) yang CloudFront menerima. Ini disebut *log akses*, juga dikenal sebagai *log standar*. 

Setiap log berisi informasi seperti waktu permintaan diterima, waktu pemrosesan, jalur permintaan, dan respons server. Anda dapat menggunakan log akses ini untuk menganalisis waktu respons dan memecahkan masalah.

Diagram berikut menunjukkan bagaimana CloudFront log informasi tentang permintaan untuk objek Anda. Dalam contoh ini, distribusi dikonfigurasi untuk mengirim log akses ke bucket Amazon S3.

![\[Aliran dasar untuk log akses\]](http://docs.aws.amazon.com/id_id/AmazonCloudFront/latest/DeveloperGuide/images/Logging.png)


1. Dalam contoh ini, Anda memiliki dua situs web, A dan B, dan dua CloudFront distribusi yang sesuai. Pengguna meminta objek Anda menggunakan URLs yang terkait dengan distribusi Anda.

1. CloudFront merutekan setiap permintaan ke lokasi tepi yang sesuai.

1. CloudFront menulis data tentang setiap permintaan ke file log khusus untuk distribusi itu. Dalam contoh ini, informasi tentang permintaan yang terkait dengan Distribusi A masuk ke file log untuk Distribusi A. Informasi tentang permintaan yang terkait dengan Distribusi B masuk ke file log untuk Distribusi B.

1. CloudFront menyimpan file log secara berkala untuk distribusi di bucket Amazon S3 yang Anda tentukan saat mengaktifkan logging. CloudFront kemudian mulai menyimpan informasi tentang permintaan berikutnya dalam file log baru untuk distribusi.

   Jika pemirsa tidak mengakses konten Anda selama jam tertentu, Anda tidak akan menerima file log apa pun selama satu jam tersebut.

**catatan**  
Kami menyarankan Anda menggunakan log untuk memahami sifat permintaan untuk konten Anda, bukan sebagai akuntansi lengkap dari semua permintaan. CloudFront memberikan log akses dengan upaya terbaik. Entri log untuk permintaan tertentu mungkin dikirim dalam waktu lama setelah permintaan diproses secara aktual dan, dalam kasus yang jarang, entri log mungkin tidak dikirimkan sama sekali. Ketika entri log dihilangkan dari log akses, jumlah entri dalam log akses tidak akan cocok dengan penggunaan yang muncul dalam laporan AWS penagihan dan penggunaan.

CloudFront mendukung dua versi logging standar. Pencatatan standar (lama) mendukung pengiriman log akses Anda ke Amazon *S3* saja. Pencatatan standar (v2) mendukung tujuan pengiriman tambahan. Anda dapat mengonfigurasi keduanya atau salah satu opsi logging untuk distribusi Anda. Untuk informasi selengkapnya, lihat topik berikut:

**Topics**
+ [

# Mengonfigurasikan pencatatan standar (v2)
](standard-logging.md)
+ [

# Mengonfigurasikan pencatatan standar (lama)
](standard-logging-legacy-s3.md)
+ [

# Referensi logging standar
](standard-logs-reference.md)

**Tip**  
CloudFront juga menawarkan log akses real-time, yang memberi Anda informasi tentang permintaan yang dibuat ke distribusi secara real time (log dikirimkan dalam hitungan detik setelah menerima permintaan). Anda dapat menggunakan log akses real-time untuk memantau, menganalisis, dan mengambil tindakan berdasarkan kinerja pengiriman konten. Lihat informasi yang lebih lengkap di [Gunakan log akses waktu nyata](real-time-logs.md).

# Mengonfigurasikan pencatatan standar (v2)
<a name="standard-logging"></a>

Anda dapat mengaktifkan log akses (log standar) saat Anda membuat atau memperbarui distribusi. Pencatatan standar (v2) mencakup fitur-fitur berikut:
+ Kirim log akses ke Amazon CloudWatch Logs, Amazon Data Firehose, dan Amazon Simple Storage Service (Amazon S3).
+ Pilih bidang log yang Anda inginkan. Anda juga dapat memilih [subset bidang log akses real-time](#standard-logging-real-time-log-selection).
+ Pilih format [file log keluaran](#supported-log-file-format) tambahan.

Jika Anda menggunakan Amazon S3, Anda memiliki fitur opsional berikut:
+ Kirim log ke opt-in Wilayah AWS.
+ Atur log Anda dengan partisi.
+ Aktifkan nama file yang kompatibel dengan HIVE.

Untuk informasi selengkapnya, lihat [Mengirim log ke Amazon S3](#send-logs-s3).

Untuk memulai dengan pencatatan standar, selesaikan langkah-langkah berikut:

1. Siapkan izin yang diperlukan untuk yang ditentukan Layanan AWS yang akan menerima log Anda.

1. Konfigurasikan logging standar dari CloudFront konsol atau CloudWatch API.

1. Lihat log akses Anda.

**catatan**  
Jika Anda mengaktifkan pencatatan standar (v2), ini tidak memengaruhi atau mengubah logging standar (lama). Anda dapat terus menggunakan logging standar (legacy) untuk distribusi Anda, selain menggunakan logging standar (v2). Untuk informasi selengkapnya, lihat [Mengonfigurasikan pencatatan standar (lama)](standard-logging-legacy-s3.md).
Jika Anda sudah mengaktifkan pencatatan standar (lama) dan ingin mengaktifkan pencatatan standar (v2) ke Amazon S3, sebaiknya tentukan bucket Amazon S3 *yang* berbeda atau gunakan jalur *terpisah di bucket yang* sama (misalnya, gunakan awalan log atau partisi). Ini membantu Anda melacak file log mana yang terkait dengan distribusi mana dan mencegah file log saling menimpa.

## Izin
<a name="permissions-standard-logging"></a>

CloudFront menggunakan log CloudWatch vended untuk mengirimkan log akses. Untuk melakukannya, Anda memerlukan izin untuk yang ditentukan Layanan AWS sehingga Anda dapat mengaktifkan pengiriman logging.

Untuk melihat izin yang diperlukan untuk setiap tujuan pencatatan, pilih dari topik berikut di *Panduan Pengguna Amazon CloudWatch Logs*.
+ [CloudWatch Log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-V2-CloudWatchLogs)
+ [Firehose](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-V2-Firehose)
+ [Amazon S3](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-V2-S3)

Setelah menyiapkan izin ke tujuan pencatatan, Anda dapat mengaktifkan pencatatan standar untuk distribusi Anda.

**catatan**  
CloudFront mendukung pengiriman log akses ke yang berbeda Akun AWS (lintas akun). Untuk mengaktifkan pengiriman lintas akun, kedua akun (akun Anda dan akun penerima) harus memiliki izin yang diperlukan. Untuk informasi selengkapnya, lihat [Aktifkan pencatatan standar untuk pengiriman lintas akun](#enable-standard-logging-cross-accounts) bagian atau [contoh pengiriman lintas akun](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#vended-logs-crossaccount-example) di *Panduan Pengguna CloudWatch Log Amazon*. 

## Aktifkan logging standar
<a name="set-up-standard-logging"></a>

Untuk mengaktifkan logging standar, Anda dapat menggunakan CloudFront konsol atau CloudWatch API.

**Contents**
+ [

### Aktifkan logging standar (CloudFront konsol)
](#access-logging-console)
+ [

### Aktifkan logging standar (CloudWatch API)
](#enable-access-logging-api)

### Aktifkan logging standar (CloudFront konsol)
<a name="access-logging-console"></a>

**Untuk mengaktifkan pencatatan standar untuk CloudFront distribusi (konsol)**

1. Gunakan CloudFront konsol untuk [memperbarui distribusi yang ada](HowToUpdateDistribution.md#HowToUpdateDistributionProcedure).

1. Pilih tab **Logging**.

1. Pilih **Tambah**, lalu pilih layanan untuk menerima log Anda:
   + CloudWatch Log
   + Firehouse
   + Amazon S3

1. Untuk **Tujuan**, pilih sumber daya untuk layanan Anda. Jika Anda belum membuat sumber daya, Anda dapat memilih **Buat** atau melihat dokumentasi berikut.
   + Untuk CloudWatch Log, masukkan **[nama grup Log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html)**.
   + Untuk Firehose, masuk ke aliran pengiriman **[Firehose](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html)**.
   + Untuk Amazon S3, masukkan nama **[Bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html)**. 
**Tip**  
Untuk menentukan awalan, masukkan awalan setelah nama bucket, seperti. `amzn-s3-demo-bucket.s3.amazonaws.com/MyLogPrefix` Jika Anda tidak menentukan awalan, secara otomatis CloudFront akan menambahkan satu untuk Anda. Untuk informasi selengkapnya, lihat [Mengirim log ke Amazon S3](#send-logs-s3).

1. Untuk **Pengaturan tambahan - *opsional***, Anda dapat menentukan opsi berikut:

   1. Untuk **pemilihan Bidang**, pilih nama bidang log yang ingin Anda kirimkan ke tujuan Anda. Anda dapat memilih [bidang log akses](standard-logs-reference.md#BasicDistributionFileFormat) dan subset [bidang log akses real-time](#standard-logging-real-time-log-selection).

   1. (Hanya Amazon S3) Untuk **Partisi, tentukan jalur untuk mempartisi** data file log Anda. 

   1. (Hanya Amazon S3) Untuk **format file yang kompatibel dengan HIVE**, Anda dapat memilih kotak centang untuk menggunakan jalur S3 yang kompatibel dengan HIVE. Ini membantu menyederhanakan pemuatan data baru ke alat yang kompatibel dengan HIVE Anda.

   1. Untuk **format Output**, tentukan format pilihan Anda.
**catatan**  
Jika Anda memilih **Parket**, opsi ini CloudWatch dikenakan biaya untuk mengonversi log akses Anda ke Apache Parquet. Untuk informasi selengkapnya, lihat [bagian Vended Logs untuk CloudWatch harga](https://aws.amazon.com/cloudwatch/pricing/).

   1. Untuk **pembatas bidang**, tentukan cara memisahkan bidang log. 

1. Selesaikan langkah-langkah untuk memperbarui atau membuat distribusi Anda.

1. Untuk menambahkan tujuan lain, ulangi langkah 3—6.

1. Dari halaman **Log**, verifikasi bahwa status log standar **Diaktifkan** di sebelah distribusi.

1. (Opsional) Untuk mengaktifkan pencatatan cookie, pilih **Kelola**, **Pengaturan**, dan aktifkan **Pencatatan cookie**, lalu pilih **Simpan perubahan**.
**Tip**  
Cookie logging adalah pengaturan global yang berlaku untuk *semua* logging standar untuk distribusi Anda. Anda tidak dapat mengganti pengaturan ini untuk tujuan pengiriman terpisah.

Untuk informasi selengkapnya tentang pengiriman logging standar dan bidang log, lihat[Referensi logging standar](standard-logs-reference.md).

### Aktifkan logging standar (CloudWatch API)
<a name="enable-access-logging-api"></a>

Anda juga dapat menggunakan CloudWatch API untuk mengaktifkan logging standar untuk distribusi Anda. 

**Catatan**  
Saat memanggil CloudWatch API untuk mengaktifkan pencatatan standar, Anda harus menentukan Wilayah AS Timur (Virginia Utara) (`us-east-1`), meskipun Anda ingin mengaktifkan pengiriman lintas Wilayah ke tujuan lain. Misalnya, jika Anda ingin mengirim log akses ke bucket S3 di Wilayah Eropa (Irlandia) (`eu-west-1`), gunakan CloudWatch API di `us-east-1` Wilayah.
Ada opsi tambahan untuk memasukkan cookie dalam pencatatan standar. Di CloudFront API, ini adalah `IncludeCookies` parameternya. Jika Anda mengonfigurasi pencatatan akses dengan menggunakan CloudWatch API dan Anda menentukan bahwa Anda ingin menyertakan cookie, Anda harus menggunakan CloudFront konsol atau CloudFront API untuk memperbarui distribusi Anda untuk menyertakan cookie. Jika tidak, tidak CloudFront dapat mengirim cookie ke tujuan log Anda. Untuk informasi selengkapnya, lihat [Pencatatan cookie](DownloadDistValuesGeneral.md#DownloadDistValuesCookieLogging).

**Untuk mengaktifkan pencatatan standar untuk distribusi (CloudWatch API)**

1. Setelah Anda membuat distribusi, dapatkan Amazon Resource Name (ARN). 

   Anda dapat menemukan ARN dari halaman **Distribusi** di CloudFront konsol atau Anda dapat menggunakan operasi [GetDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_GetDistribution.html)API. Sebuah distribusi ARN mengikuti format: `arn:aws:cloudfront::123456789012:distribution/d111111abcdef8` 

1. Selanjutnya, gunakan operasi CloudWatch [PutDeliverySource](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliverySource.html)API untuk membuat sumber pengiriman untuk distribusi. 

   1. Masukkan nama untuk sumber pengiriman.

   1. `resourceArn`Lewati distribusi. 

   1. Untuk`logType`, tentukan `ACCESS_LOGS` sebagai jenis log yang dikumpulkan. 

   1.   
**Example Contoh AWS CLI put-delivery-source perintah**  

      Berikut ini adalah contoh konfigurasi sumber pengiriman untuk distribusi.

      ```
      aws logs put-delivery-source --name S3-delivery --resource-arn arn:aws:cloudfront::123456789012:distribution/d111111abcdef8 --log-type ACCESS_LOGS
      ```

      **Keluaran**

      ```
      {
       "deliverySource": {
       "name": "S3-delivery",
       "arn": "arn:aws:logs:us-east-1:123456789012:delivery-source:S3-delivery",
       "resourceArns": [
       "arn:aws:cloudfront::123456789012:distribution/d111111abcdef8"
       ],
       "service": "cloudfront",
       "logType": "ACCESS_LOGS"
       }
      }
      ```

1. Gunakan operasi [PutDeliveryDestination](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html)API untuk mengonfigurasi tempat menyimpan log Anda. 

   1. Untuk`destinationResourceArn`, tentukan ARN tujuan. Ini bisa berupa grup CloudWatch log Log, aliran pengiriman Firehose, atau bucket Amazon S3.

   1. Untuk`outputFormat`, tentukan format output untuk log Anda.

   1.   
**Example Contoh AWS CLI put-delivery-destination perintah**  

      Berikut ini adalah contoh mengonfigurasi tujuan pengiriman ke bucket Amazon S3.

      ```
      aws logs put-delivery-destination --name S3-destination --delivery-destination-configuration destinationResourceArn=arn:aws:s3:::amzn-s3-demo-bucket
      ```

      **Keluaran**

      ```
      {
          "name": "S3-destination",
          "arn": "arn:aws:logs:us-east-1:123456789012:delivery-destination:S3-destination",
          "deliveryDestinationType": "S3",
          "deliveryDestinationConfiguration": {
              "destinationResourceArn": "arn:aws:s3:::amzn-s3-demo-bucket"
          }
      }
      ```
**catatan**  
Jika mengirimkan log lintas akun, Anda harus menggunakan operasi [PutDeliveryDestinationPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestinationPolicy.html)API untuk menetapkan kebijakan AWS Identity and Access Management (IAM) ke akun tujuan. Kebijakan IAM memungkinkan pengiriman dari satu akun ke akun lain.

1. Gunakan operasi [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html)API untuk menautkan sumber pengiriman ke tujuan yang Anda buat di langkah sebelumnya. Operasi API ini mengaitkan sumber pengiriman dengan tujuan akhir.

   1. Untuk`deliverySourceName`, tentukan nama sumbernya.

   1. Untuk`deliveryDestinationArn`, tentukan ARN untuk tujuan pengiriman.

   1. Untuk`fieldDelimiter`, tentukan string untuk memisahkan setiap bidang log.

   1. Untuk`recordFields`, tentukan bidang log yang Anda inginkan.

   1. Jika Anda menggunakan S3, tentukan apakah akan menggunakan `enableHiveCompatiblePath` dan`suffixPath`.  
**Example Contoh perintah AWS CLI create-delivery**  

   Berikut ini adalah contoh pembuatan pengiriman. 

   ```
   aws logs create-delivery --delivery-source-name cf-delivery --delivery-destination-arn arn:aws:logs:us-east-1:123456789012:delivery-destination:S3-destination
   ```

   **Keluaran**

   ```
   {
       "id": "abcNegnBoTR123",
       "arn": "arn:aws:logs:us-east-1:123456789012:delivery:abcNegnBoTR123",
       "deliverySourceName": "cf-delivery",
       "deliveryDestinationArn": "arn:aws:logs:us-east-1:123456789012:delivery-destination:S3-destination",
       "deliveryDestinationType": "S3",
       "recordFields": [
           "date",
           "time",
           "x-edge-location",
           "sc-bytes",
           "c-ip",
           "cs-method",
           "cs(Host)",
           "cs-uri-stem",
           "sc-status",
           "cs(Referer)",
           "cs(User-Agent)",
           "cs-uri-query",
           "cs(Cookie)",
           "x-edge-result-type",
           "x-edge-request-id",
           "x-host-header",
           "cs-protocol",
           "cs-bytes",
           "time-taken",
           "x-forwarded-for",
           "ssl-protocol",
           "ssl-cipher",
           "x-edge-response-result-type",
           "cs-protocol-version",
           "fle-status",
           "fle-encrypted-fields",
           "c-port",
           "time-to-first-byte",
           "x-edge-detailed-result-type",
           "sc-content-type",
           "sc-content-len",
           "sc-range-start",
           "sc-range-end",
           "c-country",
           "cache-behavior-path-pattern"
       ],
        "fieldDelimiter": ""
   }
   ```

1. Dari CloudFront konsol, pada halaman **Log**, verifikasi bahwa status log standar **Diaktifkan** di sebelah distribusi.

   Untuk informasi selengkapnya tentang pengiriman logging standar dan bidang log, lihat[Referensi logging standar](standard-logs-reference.md).

**catatan**  
Untuk mengaktifkan logging standar (v2) CloudFront dengan menggunakan AWS CloudFormation, Anda dapat menggunakan properti CloudWatch Log berikut:  
[Pengiriman](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-delivery.html)
[DeliveryDestination](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-deliverydestination.html)
[DeliverySource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-deliverysource.html)
`ResourceArn`Ini adalah CloudFront distribusi dan `LogType` harus `ACCESS_LOGS` sebagai jenis log yang didukung.

## Aktifkan pencatatan standar untuk pengiriman lintas akun
<a name="enable-standard-logging-cross-accounts"></a>

Jika Anda mengaktifkan pencatatan standar untuk Anda Akun AWS dan Anda ingin mengirimkan log akses Anda ke akun lain, pastikan Anda mengonfigurasi akun sumber dan akun tujuan dengan benar. *Akun sumber* dengan CloudFront distribusi mengirimkan log aksesnya ke *akun tujuan*.

Dalam contoh prosedur ini, akun sumber*111111111111*) mengirimkan log aksesnya ke bucket Amazon S3 di akun tujuan ()*222222222222*. Untuk mengirim log akses ke bucket Amazon S3 di akun tujuan, gunakan file. AWS CLI

### Konfigurasikan akun tujuan
<a name="steps-destination-account"></a>

Untuk akun tujuan, selesaikan prosedur berikut.

**Untuk mengkonfigurasi akun tujuan**

1. Untuk membuat tujuan pengiriman log, Anda dapat memasukkan AWS CLI perintah berikut. Contoh ini menggunakan `MyLogPrefix` string untuk membuat awalan untuk log akses Anda.

   ```
   aws logs put-delivery-destination --name cloudfront-delivery-destination --delivery-destination-configuration "destinationResourceArn=arn:aws:s3:::amzn-s3-demo-bucket-cloudfront-logs/MyLogPrefix"
   ```

   **Keluaran**

   ```
   {
       "deliveryDestination": {
           "name": "cloudfront-delivery-destination",
           "arn": "arn:aws:logs:us-east-1:222222222222:delivery-destination:cloudfront-delivery-destination",
           "deliveryDestinationType": "S3",
           "deliveryDestinationConfiguration": {"destinationResourceArn": "arn:aws:s3:::amzn-s3-demo-bucket-cloudfront-logs/MyLogPrefix"}
       }
   }
   ```
**catatan**  
Jika Anda menentukan bucket S3 *tanpa* awalan, secara otomatis CloudFront akan menambahkan `AWSLogs/<account-ID>/CloudFront` sebagai awalan yang muncul di tujuan pengiriman `suffixPath` S3. Untuk informasi lebih lanjut, lihat [S3 DeliveryConfiguration](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_S3DeliveryConfiguration.html).

1. Tambahkan kebijakan sumber daya untuk tujuan pengiriman log agar akun sumber dapat membuat pengiriman log.

   Dalam kebijakan berikut, ganti *111111111111* dengan ID akun sumber dan tentukan ARN tujuan pengiriman dari output pada langkah 1. 

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowCreateDelivery",
               "Effect": "Allow",
               "Principal": {"AWS": "111111111111"},
               "Action": ["logs:CreateDelivery"],
               "Resource": "arn:aws:logs:us-east-1:222222222222:delivery-destination:cloudfront-delivery-destination"
           }
       ]
   }
   ```

------

1. Simpan file, seperti`deliverypolicy.json`.

1. Untuk melampirkan kebijakan sebelumnya ke tujuan pengiriman, masukkan AWS CLI perintah berikut.

   ```
   aws logs put-delivery-destination-policy --delivery-destination-name cloudfront-delivery-destination --delivery-destination-policy file://deliverypolicy.json
   ```

1. Tambahkan pernyataan di bawah ini ke kebijakan bucket Amazon S3 tujuan, menggantikan ARN sumber daya dan ID akun sumber. Kebijakan ini memungkinkan kepala `delivery.logs.amazonaws.com` layanan untuk melakukan `s3:PutObject` tindakan.

   ```
   {
       "Sid": "AWSLogsDeliveryWrite",
       "Effect": "Allow",
       "Principal": {"Service": "delivery.logs.amazonaws.com"},
       "Action": "s3:PutObject",
       "Resource": "arn:aws:s3:::amzn-s3-demo-bucket-cloudfront-logs/*",
       "Condition": {
           "StringEquals": {
               "s3:x-amz-acl": "bucket-owner-full-control",
               "aws:SourceAccount": "111111111111"
           },
           "ArnLike": {"aws:SourceArn": "arn:aws:logs:us-east-1:111111111111:delivery-source:*"}
       }
   }
   ```

1. Jika Anda menggunakan AWS KMS bucket, tambahkan pernyataan berikut ke kebijakan kunci KMS untuk memberikan izin kepada prinsipal `delivery.logs.amazonaws.com` layanan.

   ```
   {
       "Sid": "Allow Logs Delivery to use the key",
       "Effect": "Allow",
       "Principal": {"Service": "delivery.logs.amazonaws.com"},
       "Action": [
           "kms:Encrypt",
           "kms:Decrypt",
           "kms:ReEncrypt*",
           "kms:GenerateDataKey*",
           "kms:DescribeKey"
       ],
       "Resource": "*",
       "Condition": {
           "StringEquals": {"aws:SourceAccount": "111111111111"},
           "ArnLike": {"aws:SourceArn": "arn:aws:logs:us-east-1:111111111111:delivery-source:*"}
       }
   }
   ```

### Konfigurasikan akun sumber
<a name="steps-source-account"></a>

Setelah Anda mengonfigurasi akun tujuan, ikuti prosedur ini untuk membuat sumber pengiriman dan mengaktifkan pencatatan untuk distribusi di akun sumber.

**Untuk mengkonfigurasi akun sumber**

1. Buat sumber pengiriman untuk pencatatan CloudFront standar sehingga Anda dapat mengirim file log ke CloudWatch Log. 

   Anda dapat memasukkan AWS CLI perintah berikut, mengganti nama dan ARN distribusi Anda.

   ```
   aws logs put-delivery-source --name s3-cf-delivery --resource-arn arn:aws:cloudfront::111111111111:distribution/E1TR1RHV123ABC --log-type ACCESS_LOGS
   ```

   **Keluaran**

   ```
   {
       "deliverySource": {
           "name": "s3-cf-delivery",
           "arn": "arn:aws:logs:us-east-1:111111111111:delivery-source:s3-cf-delivery",
           "resourceArns": ["arn:aws:cloudfront::111111111111:distribution/E1TR1RHV123ABC"],
           "service": "cloudfront",
           "logType": "ACCESS_LOGS"
       }
   }
   ```

1. Buat pengiriman untuk memetakan sumber pengiriman log akun sumber dan tujuan pengiriman log akun tujuan.

   Dalam AWS CLI perintah berikut, tentukan ARN tujuan pengiriman dari output di [Langkah 1: Konfigurasikan akun tujuan](#steps-destination-account).

   ```
   aws logs create-delivery --delivery-source-name s3-cf-delivery --delivery-destination-arn arn:aws:logs:us-east-1:222222222222:delivery-destination:cloudfront-delivery-destination
   ```

   **Keluaran**

   ```
   {
       "delivery": {
           "id": "OPmOpLahVzhx1234",
           "arn": "arn:aws:logs:us-east-1:111111111111:delivery:OPmOpLahVzhx1234",
           "deliverySourceName": "s3-cf-delivery",
           "deliveryDestinationArn": "arn:aws:logs:us-east-1:222222222222:delivery-destination:cloudfront-delivery-destination",
           "deliveryDestinationType": "S3",
           "recordFields": [
               "date",
               "time",
               "x-edge-location",
               "sc-bytes",
               "c-ip",
               "cs-method",
               "cs(Host)",
               "cs-uri-stem",
               "sc-status",
               "cs(Referer)",
               "cs(User-Agent)",
               "cs-uri-query",
               "cs(Cookie)",
               "x-edge-result-type",
               "x-edge-request-id",
               "x-host-header",
               "cs-protocol",
               "cs-bytes",
               "time-taken",
               "x-forwarded-for",
               "ssl-protocol",
               "ssl-cipher",
               "x-edge-response-result-type",
               "cs-protocol-version",
               "fle-status",
               "fle-encrypted-fields",
               "c-port",
               "time-to-first-byte",
               "x-edge-detailed-result-type",
               "sc-content-type",
               "sc-content-len",
               "sc-range-start",
               "sc-range-end",
               "c-country",
               "cache-behavior-path-pattern"
           ],
           "fieldDelimiter": "\t"
       }
   }
   ```

1. Verifikasi pengiriman lintas akun Anda berhasil.

   1. Dari *source* akun, masuk ke CloudFront konsol dan pilih distribusi Anda. Pada tab **Logging**, di bawah **Type**, Anda akan melihat entri yang dibuat untuk pengiriman log lintas akun S3.

   1. Dari *destination* akun, masuk ke konsol Amazon S3 dan pilih bucket Amazon S3 Anda. Anda akan melihat awalan `MyLogPrefix` di nama bucket dan log akses apa pun yang dikirimkan ke folder itu. 

## Format file keluaran
<a name="supported-log-file-format"></a>

Bergantung pada tujuan pengiriman yang Anda pilih, Anda dapat menentukan salah satu format berikut untuk file log:
+ JSON
+ Biasa
+ w3c
+ Mentah
+ Parket (hanya Amazon S3)

**catatan**  
Anda hanya dapat mengatur format output saat pertama kali membuat tujuan pengiriman. Ini tidak dapat diperbarui nanti. Untuk mengubah format output, hapus pengiriman dan buat yang baru.

Untuk informasi selengkapnya, lihat [PutDeliveryDestination](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html)di *Referensi API Amazon CloudWatch Logs*.

## Edit pengaturan logging standar
<a name="standard-logs-v2-edit-settings"></a>

Anda dapat mengaktifkan atau menonaktifkan logging dan memperbarui pengaturan log lainnya dengan menggunakan [CloudFront konsol](https://console.aws.amazon.com/cloudfront/v4/home) atau CloudWatch API. Perubahan Anda pada pengaturan log mulai berlaku dalam 12 jam.

Untuk informasi selengkapnya, lihat topik berikut:
+ Untuk memperbarui distribusi menggunakan CloudFront konsol, lihat[Perbarui distribusi](HowToUpdateDistribution.md).
+ Untuk memperbarui distribusi menggunakan CloudFront API, lihat [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html)di *Referensi Amazon CloudFront API*.
+ Untuk informasi selengkapnya tentang operasi API CloudWatch Log, lihat [Referensi API Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/Welcome.html).

## Akses bidang log
<a name="standard-logging-real-time-log-selection"></a>

Anda dapat memilih bidang log yang sama yang didukung oleh pencatatan standar (lama). Untuk informasi selengkapnya, lihat [bidang file log](standard-logs-reference.md#BasicDistributionFileFormat).

Selain itu, Anda dapat memilih [bidang log akses real-time](real-time-logs.md#understand-real-time-log-config) berikut.

1. `timestamp(ms)`— Timestamp dalam milidetik.

1. `origin-fbl`— Jumlah detik latensi byte pertama antara CloudFront dan asal Anda. 

1. `origin-lbl`— Jumlah detik latensi byte terakhir antara CloudFront dan asal Anda. 

1. `asn`— Nomor sistem otonom (ASN) dari pemirsa. 

1. `c-country`— Kode negara yang mewakili lokasi geografis pemirsa, sebagaimana ditentukan oleh alamat IP pemirsa. Untuk daftar kode negara, lihat [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).

1. `cache-behavior-path-pattern`— Pola jalur yang mengidentifikasi perilaku cache yang cocok dengan permintaan penampil. 

## Kirim log ke CloudWatch Log
<a name="send-logs-cloudwatch-logs"></a>

Untuk mengirim CloudWatch log ke Log, buat atau gunakan grup CloudWatch log Log yang ada. Untuk informasi selengkapnya tentang mengonfigurasi grup CloudWatch log Log, lihat [Bekerja dengan Grup Log dan Aliran Log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html).

Setelah membuat grup log, Anda harus memiliki izin yang diperlukan untuk mengizinkan pencatatan standar. Untuk informasi selengkapnya tentang izin yang diperlukan, lihat [Log yang dikirim ke CloudWatch Log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-V2-CloudWatchLogs) di *Panduan Pengguna CloudWatch Log Amazon*. 

**Catatan**  
Saat Anda menentukan nama grup CloudWatch log Log, hanya gunakan pola regex. `[\w-]` Untuk informasi selengkapnya, lihat operasi [PutDeliveryDestination](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html#API_PutDeliveryDestination_RequestSyntax)API di *Referensi API Amazon CloudWatch Logs*.
Pastikan kebijakan sumber daya grup log Anda tidak melebihi batas ukuran. Lihat bagian [Pertimbangan batas ukuran kebijakan sumber daya grup log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-V2-CloudWatchLogs) di topik CloudWatch Log.

### Contoh log akses dikirim ke CloudWatch Log
<a name="example-access-logs-cwl"></a>

```
{ 
"date": "2024-11-14", 
"time": "21:34:06", 
"x-edge-location": "SOF50-P2", 
"asn": "16509", 
"timestamp(ms)": "1731620046814", 
"origin-fbl": "0.251", 
"origin-lbl": "0.251", 
"x-host-header": "d111111abcdef8.cloudfront.net", 
"cs(Cookie)": "examplecookie=value" 
}
```

## Kirim log ke Firehose
<a name="send-logs-kinesis"></a>

Untuk mengirim log ke Firehose, buat atau gunakan aliran pengiriman Firehose yang ada. Kemudian, tentukan aliran pengiriman Firehose sebagai tujuan pengiriman log. Anda harus menentukan aliran pengiriman Firehose di Wilayah us-east-1 AS Timur (Virginia Utara).

Untuk informasi tentang membuat aliran pengiriman, lihat [Membuat aliran pengiriman Amazon Data Firehose](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html). 

Setelah membuat aliran pengiriman, Anda harus memiliki izin yang diperlukan untuk mengizinkan pencatatan standar. Untuk informasi selengkapnya, lihat [Log yang dikirim ke Firehose](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-V2-Firehose) di *Panduan Pengguna Amazon CloudWatch Logs*.

**catatan**  
Saat Anda menentukan nama aliran Firehose, hanya gunakan pola regex. `[\w-]` Untuk informasi selengkapnya, lihat operasi [PutDeliveryDestination](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html#API_PutDeliveryDestination_RequestSyntax)API di *Referensi API Amazon CloudWatch Logs*.

### Contoh log akses dikirim ke Firehose
<a name="example-access-logs-firehose"></a>

```
{"date":"2024-11-15","time":"19:45:51","x-edge-location":"SOF50-P2","asn":"16509","timestamp(ms)":"1731699951183","origin-fbl":"0.254","origin-lbl":"0.254","x-host-header":"d111111abcdef8.cloudfront.net","cs(Cookie)":"examplecookie=value"}
{"date":"2024-11-15","time":"19:45:52","x-edge-location":"SOF50-P2","asn":"16509","timestamp(ms)":"1731699952950","origin-fbl":"0.125","origin-lbl":"0.125","x-host-header":"d111111abcdef8.cloudfront.net","cs(Cookie)":"examplecookie=value"}
```

## Mengirim log ke Amazon S3
<a name="send-logs-s3"></a>

Untuk mengirim log akses ke Amazon S3, buat atau gunakan bucket S3 yang sudah ada. Saat Anda mengaktifkan login CloudFront, tentukan nama bucket. Untuk informasi tentang membuat bucket, lihat [Membuat bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*.

Setelah membuat bucket, Anda harus memiliki izin yang diperlukan untuk mengizinkan pencatatan standar. Untuk informasi selengkapnya, lihat [Log yang dikirim ke Amazon S3](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-V2-S3) di *Panduan Pengguna Amazon CloudWatch Logs*.
+ Setelah mengaktifkan pencatatan, AWS secara otomatis menambahkan kebijakan bucket yang diperlukan untuk Anda.
+ [Anda juga dapat menggunakan bucket S3 dalam opt-in. Wilayah AWS](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html)

**catatan**  
Jika Anda sudah mengaktifkan pencatatan standar (lama) dan ingin mengaktifkan pencatatan standar (v2) ke Amazon S3, sebaiknya tentukan bucket Amazon S3 *yang* berbeda atau gunakan jalur *terpisah di bucket yang* sama (misalnya, gunakan awalan log atau partisi). Ini membantu Anda melacak file log mana yang terkait dengan distribusi mana dan mencegah file log saling menimpa.

**Topics**
+ [

### Tentukan ember S3
](#prefix-s3-buckets)
+ [

### Partitioning
](#partitioning)
+ [

### Format nama file yang kompatibel dengan HIVE
](#hive-compatible-file-name-format)
+ [

### Contoh jalur untuk mengakses log
](#bucket-path-examples)
+ [

### Contoh log akses dikirim ke Amazon S3
](#example-access-logs-s3)

### Tentukan ember S3
<a name="prefix-s3-buckets"></a>

Saat Anda menentukan bucket S3 sebagai tujuan pengiriman, perhatikan hal berikut.

Nama bucket S3 hanya dapat menggunakan pola regex. `[\w-]` Untuk informasi selengkapnya, lihat operasi [PutDeliveryDestination](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html#API_PutDeliveryDestination_RequestSyntax)API di *Referensi API Amazon CloudWatch Logs*.

Jika Anda menetapkan awalan untuk bucket S3 Anda, log Anda akan muncul di bawah jalur itu. Jika Anda tidak menentukan awalan, secara otomatis CloudFront akan menambahkan `AWSLogs/{account-id}/CloudFront` awalan untuk Anda. 

Untuk informasi selengkapnya, lihat [Contoh jalur untuk mengakses log](#bucket-path-examples).

### Partitioning
<a name="partitioning"></a>

Anda dapat menggunakan partisi untuk mengatur log akses Anda saat CloudFront mengirimkannya ke bucket S3 Anda. Ini membantu Anda mengatur dan menemukan log akses Anda berdasarkan jalur yang Anda inginkan.

Anda dapat menggunakan variabel berikut untuk membuat jalur folder.
+ `{DistributionId}` atau `{distributionid}`
+ `{yyyy}`
+ `{MM}`
+ `{dd}`
+ `{HH}`
+ `{accountid}`

Anda dapat menggunakan sejumlah variabel dan menentukan nama folder di jalur Anda. CloudFrontkemudian gunakan jalur ini untuk membuat struktur folder untuk Anda di ember S3.

**Contoh**
+ `my_distribution_log_data/{DistributionId}/logs`
+ `/cloudfront/{DistributionId}/my_distribution_log_data/{yyyy}/{MM}/{dd}/{HH}/logs `

**catatan**  
 Anda dapat menggunakan salah satu variabel untuk ID distribusi di jalur sufiks. Namun, jika Anda mengirim log akses ke AWS Glue, Anda harus menggunakan `{distributionid}` variabel karena AWS Glue mengharapkan nama partisi berada dalam huruf kecil. Perbarui konfigurasi log Anda yang ada CloudFront untuk menggantikan `{DistributionId}` dengan`{distributionid}`. 

### Format nama file yang kompatibel dengan HIVE
<a name="hive-compatible-file-name-format"></a>

Anda dapat menggunakan opsi ini sehingga objek S3 yang berisi log akses terkirim menggunakan struktur awalan yang memungkinkan integrasi dengan Apache Hive. Untuk informasi selengkapnya, lihat operasi API [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html).

**Example Contoh**  

```
/cloudfront/DistributionId={DistributionId}/my_distribution_log_data/year={yyyy}/month={MM}/day={dd}/hour={HH}/logs
```

*Untuk informasi selengkapnya tentang partisi dan opsi yang kompatibel dengan HIVE, lihat [elemen S3 DeliveryConfiguration](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_S3DeliveryConfiguration.html) di Referensi API Amazon Logs. CloudWatch *

### Contoh jalur untuk mengakses log
<a name="bucket-path-examples"></a>

Saat menentukan bucket S3 sebagai tujuan, Anda dapat menggunakan opsi berikut untuk membuat jalur ke log akses:
+ Bucket Amazon S3, dengan atau tanpa awalan
+ Partisi, dengan menggunakan variabel yang CloudFront disediakan atau memasukkan variabel Anda sendiri
+ Mengaktifkan opsi yang kompatibel dengan HIVE

Tabel berikut menunjukkan bagaimana log akses Anda muncul di bucket, tergantung pada opsi yang Anda pilih.

#### Bucket Amazon S3 dengan awalan
<a name="bucket-with-prefix"></a>


| Nama ember Amazon S3 | Partisi yang Anda tentukan di jalur sufiks | Jalur sufiks yang diperbarui | Hive-kompatibel diaktifkan? | Log akses dikirim ke | 
| --- | --- | --- | --- | --- | 
| amzn-s3-demo-bucket/MyLogPrefix | Tidak ada | Tidak ada | Tidak | amzn-s3-demo-bucket/MyLogPrefix/ | 
| amzn-s3-demo-bucket/MyLogPrefix | myFolderA/ | myFolderA/ | Tidak | amzn-s3-demo-bucket/MyLogPrefix/myFolderA/ | 
| amzn-s3-demo-bucket/MyLogPrefix | myFolderA/\$1yyyy\$1 | myFolderA/\$1yyyy\$1 | Ya | amzn-s3-demo-bucket/MyLogPrefix/myFolderA/year=2025 | 

#### Bucket Amazon S3 tanpa awalan
<a name="bucket-without-prefix"></a>


| Nama ember Amazon S3 | Partisi yang Anda tentukan di jalur sufiks | Jalur sufiks yang diperbarui | Hive-kompatibel diaktifkan? | Log akses dikirim ke | 
| --- | --- | --- | --- | --- | 
| amzn-s3-demo-bucket | Tidak ada | AWSLogs/\$1account-id\$1/CloudFront/ | Tidak | amzn-s3-demo-bucket/AWSLogs/<your-account-ID>/CloudFront/ | 
| amzn-s3-demo-bucket | myFolderA/ | AWSLogs/\$1account-id\$1/CloudFront/myFolderA/ | Tidak | amzn-s3-demo-bucket/AWSLogs/<your-account-ID>/CloudFront/myFolderA/ | 
| amzn-s3-demo-bucket | myFolderA/ | AWSLogs/\$1account-id\$1/CloudFront/myFolderA/ | Ya | amzn-s3-demo-bucket/AWSLogs/aws-account-id=<your-account-ID>/CloudFront/myFolderA/ | 
| amzn-s3-demo-bucket | myFolderA/\$1yyyy\$1 | AWSLogs/\$1account-id\$1/CloudFront/myFolderA/\$1yyyy\$1 | Ya | amzn-s3-demo-bucket/AWSLogs/aws-account-id=<your-account-ID>/CloudFront/myFolderA/year=2025 | 

#### Akun AWS ID sebagai partisi
<a name="bucket-account-id-partition"></a>


| Nama ember Amazon S3 | Partisi yang Anda tentukan di jalur sufiks | Jalur sufiks yang diperbarui | Hive-kompatibel diaktifkan? | Log akses dikirim ke | 
| --- | --- | --- | --- | --- | 
| amzn-s3-demo-bucket | Tidak ada | AWSLogs/\$1account-id\$1/CloudFront/ | Ya | amzn-s3-demo-bucket/AWSLogs/aws-account-id=<your-account-ID>/CloudFront/ | 
| amzn-s3-demo-bucket | myFolderA/\$1accountid\$1 | AWSLogs/\$1account-id\$1/CloudFront/myFolderA/\$1accountid\$1 | Ya | amzn-s3-demo-bucket/AWSLogs/aws-account-id=<your-account-ID>/CloudFront/myFolderA/accountid=<your-account-ID> | 

**Catatan**  
`{account-id}`Variabel dicadangkan untuk CloudFront. CloudFrontsecara otomatis menambahkan variabel ini ke jalur sufiks jika Anda menentukan *bucket Amazon S3 tanpa awalan*. Jika log Anda kompatibel dengan HIVE, variabel ini muncul sebagai. `aws-account-id`
Anda dapat menggunakan `{accountid}` variabel sehingga CloudFront menambahkan ID akun Anda ke jalur akhiran. Jika log Anda kompatibel dengan HIVE, variabel ini muncul sebagai. `accountid`
Untuk informasi selengkapnya tentang jalur sufiks, lihat [DeliveryConfigurationS3](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_S3DeliveryConfiguration.html).

### Contoh log akses dikirim ke Amazon S3
<a name="example-access-logs-s3"></a>

```
#Fields: date time x-edge-location asn timestamp(ms) x-host-header cs(Cookie)
2024-11-14    22:30:25    SOF50-P2    16509    1731623425421    
d111111abcdef8.cloudfront.net    examplecookie=value2
```

## Nonaktifkan logging standar
<a name="delete-standard-log-destination"></a>

Anda dapat menonaktifkan pencatatan standar untuk distribusi Anda jika Anda tidak lagi membutuhkannya.

**Untuk menonaktifkan logging standar**

1. Masuk ke CloudFront konsol.

1. Pilih **Distribusi** dan kemudian pilih ID distribusi Anda. 

1. Pilih **Logging** dan kemudian di bawah **Akses log tujuan**, pilih tujuan.

1. Pilih **Kelola** dan kemudian pilih **Hapus**.

1. Ulangi langkah sebelumnya jika Anda memiliki lebih dari satu logging standar.

**catatan**  
Saat Anda menghapus logging standar dari CloudFront konsol, tindakan ini hanya menghapus pengiriman dan tujuan pengiriman. Itu tidak menghapus sumber pengiriman dari Anda Akun AWS. Untuk menghapus sumber pengiriman, tentukan nama sumber pengiriman dalam `aws logs delete-delivery-source --name DeliverySourceName` perintah. Untuk informasi selengkapnya, lihat [DeleteDeliverySource](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteDeliverySource.html)di *Referensi API Amazon CloudWatch Logs*.

## Pemecahan Masalah
<a name="troubleshooting-access-logs-v2"></a>

Gunakan informasi berikut untuk memperbaiki masalah umum saat Anda bekerja dengan logging CloudFront standar (v2).

### Sumber pengiriman sudah ada
<a name="access-logging-resource-already-used"></a>

Saat mengaktifkan pencatatan standar untuk distribusi, Anda membuat sumber pengiriman. Anda kemudian menggunakan sumber pengiriman tersebut untuk membuat pengiriman ke jenis tujuan yang Anda inginkan: CloudWatch Log, Firehose, Amazon S3. Saat ini, Anda hanya dapat memiliki satu sumber pengiriman per distribusi. Jika Anda mencoba membuat sumber pengiriman lain untuk distribusi yang sama, pesan galat berikut akan muncul.

```
This ResourceId has already been used in another Delivery Source in this account
```

Untuk membuat sumber pengiriman lain, hapus yang sudah ada terlebih dahulu. Untuk informasi selengkapnya, lihat [DeleteDeliverySource](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteDeliverySource.html)di *Referensi API Amazon CloudWatch Logs*.

### Saya mengubah jalur sufiks dan ember Amazon S3 tidak dapat menerima log saya
<a name="access-logging-s3-permission"></a>

Jika Anda mengaktifkan pencatatan standar (v2) dan menentukan ARN bucket tanpa awalan, CloudFront akan menambahkan default berikut ke jalur sufiks:. `AWSLogs/{account-id}/CloudFront` Jika Anda menggunakan CloudFront konsol atau operasi [UpdateDeliveryConfiguration](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UpdateDeliveryConfiguration.html)API untuk menentukan jalur sufiks yang berbeda, Anda harus memperbarui kebijakan bucket Amazon S3 untuk menggunakan jalur yang sama.

**Example Contoh: Memperbarui jalur sufiks**  

1. Jalur sufiks default Anda adalah `AWSLogs/{account-id}/CloudFront` dan Anda menggantinya dengan`myFolderA`. 

1. Karena jalur akhiran baru Anda berbeda dari jalur yang ditentukan dalam kebijakan bucket Amazon S3, log akses Anda tidak akan dikirimkan.

1. Anda dapat melakukan salah satu langkah berikut:
   + Perbarui izin bucket Amazon S3 dari ke`amzn-s3-demo-bucket/AWSLogs/<your-account-ID>/CloudFront/*`. `amzn-s3-demo-bucket/myFolderA/*`
   + Perbarui konfigurasi logging Anda untuk menggunakan akhiran default lagi: `AWSLogs/{account-id}/CloudFront` 
Untuk informasi selengkapnya, lihat [Izin](#permissions-standard-logging).

## Hapus file log
<a name="standard-logs-v2-delete"></a>

CloudFront tidak secara otomatis menghapus file log dari tujuan Anda. Untuk informasi tentang menghapus file log, lihat topik berikut:

**Amazon S3**
+ [Menghapus objek](https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjects.html) di *Panduan Pengguna Konsol Layanan Penyimpanan Sederhana Amazon*

**CloudWatch Log**
+ [Bekerja dengan grup log dan aliran log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) di *Panduan Pengguna Amazon CloudWatch Logs*
+ [DeleteLogGroup](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteLogGroup.html)di *Referensi API Amazon CloudWatch Logs*

**Firehouse**
+ [DeleteDeliveryStream](https://docs.aws.amazon.com/firehose/latest/APIReference/API_DeleteDeliveryStream.html)di Referensi *API Firehose Data Amazon*

## Harga
<a name="pricing-standard-logs"></a>

CloudFront tidak mengenakan biaya untuk mengaktifkan log standar. Namun, Anda dapat dikenakan biaya untuk pengiriman, konsumsi, penyimpanan, atau akses, tergantung pada tujuan pengiriman log yang Anda pilih. Untuk informasi selengkapnya, lihat [Harga CloudWatch Log Amazon](https://aws.amazon.com/cloudwatch/pricing/). Di bawah **Tingkat Berbayar**, pilih tab **Log**, lalu di bawah **Log Terjual**, lihat informasi untuk setiap tujuan pengiriman.

Untuk informasi selengkapnya tentang harga untuk masing-masing Layanan AWS, lihat topik berikut:
+ [Harga Amazon CloudWatch Log](https://aws.amazon.com/cloudwatch/pricing/)
+ [Harga Amazon Data Firehose](https://aws.amazon.com/kinesis/data-firehose/pricing/)
+ [Harga Amazon S3](https://aws.amazon.com/s3/pricing/) 
**catatan**  
Tidak ada biaya tambahan untuk pengiriman log ke Amazon S3, meskipun Anda dikenakan biaya Amazon S3 untuk menyimpan dan mengakses file log. Jika Anda mengaktifkan opsi **Parket** untuk mengonversi log akses Anda ke Apache Parquet, opsi ini dikenakan biaya. CloudWatch Untuk informasi selengkapnya, lihat [bagian Vended Logs untuk CloudWatch harga](https://aws.amazon.com/cloudwatch/pricing/).

# Mengonfigurasikan pencatatan standar (lama)
<a name="standard-logging-legacy-s3"></a>

**Catatan**  
Topik ini untuk versi logging standar sebelumnya. Untuk versi terbaru, lihat[Mengonfigurasikan pencatatan standar (v2)](standard-logging.md).
Jika Anda sudah mengaktifkan pencatatan standar (lama) dan ingin mengaktifkan pencatatan standar (v2) ke Amazon S3, sebaiknya tentukan bucket Amazon S3 *yang* berbeda atau gunakan jalur *terpisah di bucket yang* sama (misalnya, gunakan awalan log atau partisi). Ini membantu Anda melacak file log mana yang terkait dengan distribusi mana dan mencegah file log saling menimpa.

Untuk memulai dengan logging standar (legacy), selesaikan langkah-langkah berikut:

1. Pilih bucket Amazon S3 yang akan menerima log Anda dan tambahkan izin yang diperlukan.

1. Konfigurasikan logging standar (legacy) dari CloudFront konsol atau CloudFront API. Anda hanya dapat memilih bucket Amazon S3 untuk menerima log Anda.

1. Lihat log akses Anda.

## Pilih bucket Amazon S3 untuk log standar
<a name="access-logs-choosing-s3-bucket"></a>

Saat Anda mengaktifkan pencatatan untuk distribusi, Anda menentukan bucket Amazon S3 yang Anda inginkan CloudFront untuk menyimpan file log. Jika Anda menggunakan Amazon S3 sebagai asal Anda, sebaiknya gunakan bucket *terpisah* untuk file log Anda.

Tentukan bucket Amazon S3 tempat Anda CloudFront ingin menyimpan log akses, misalnya,. `amzn-s3-demo-bucket.s3.amazonaws.com`

Anda dapat menyimpan file log untuk beberapa distribusi dalam buket yang sama. Saat Anda mengaktifkan log, Anda dapat menentukan prefiks opsional untuk nama file, sehingga Anda dapat terus melacak file log yang terkait dengan distribusi yang mana.

**Tentang memilih ember S3**  
Bucket Anda harus mengaktifkan daftar kontrol akses (ACL). Jika Anda memilih bucket tanpa ACL diaktifkan dari CloudFront konsol, pesan kesalahan akan muncul. Lihat [Izin](#AccessLogsBucketAndFileOwnership).
Jangan memilih bucket Amazon S3 dengan [Kepemilikan Objek S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) yang disetel ke pemilik **bucket** yang diberlakukan. Pengaturan itu dinonaktifkan ACLs untuk ember dan objek di dalamnya, yang CloudFront mencegah pengiriman file log ke ember.
Pencatatan lama tidak mendukung bucket Amazon S3 di wilayah keikutsertaan. Silakan pilih wilayah yang diaktifkan secara default atau gunakan [Standard Logging V2](standard-logging.md) yang mendukung wilayah keikutsertaan dan fitur tambahan. Untuk daftar wilayah default dan opt-in, lihat [Wilayah AWS](https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html).

## Izin
<a name="AccessLogsBucketAndFileOwnership"></a>

**penting**  
Mulai April 2023, Anda harus mengaktifkan S3 ACLs untuk bucket S3 baru yang digunakan untuk log standar. CloudFront Anda dapat mengaktifkan ACLs saat [membuat bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-ownership-new-bucket.html), atau mengaktifkan [bucket ACLs yang sudah ada](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-ownership-existing-bucket.html).  
*Untuk informasi selengkapnya tentang perubahan, lihat [Pengaturan default untuk bucket S3 baru FAQ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-faq.html) di *Panduan Pengguna Amazon Simple Storage Service* dan [Heads-Up: Perubahan Keamanan Amazon S3 Akan Datang pada bulan April 2023 di Blog](https://aws.amazon.com/blogs/aws/heads-up-amazon-s3-security-changes-are-coming-in-april-of-2023/) Berita.AWS *

Anda Akun AWS harus memiliki izin berikut untuk bucket yang Anda tentukan untuk file log:
+ ACL untuk ember harus memberi Anda`FULL_CONTROL`. Jika Anda adalah pemilik bucket, akun Anda memiliki izin ini secara default. Jika tidak, pemilik keranjang harus memperbarui ACL untuk buket.
+ `s3:GetBucketAcl`
+ `s3:PutBucketAcl`

**ACL untuk buket**  
Saat Anda membuat atau memperbarui distribusi dan mengaktifkan pencatatan, CloudFront gunakan izin ini untuk memperbarui ACL untuk bucket guna memberikan izin `awslogsdelivery` akun`FULL_CONTROL`. `awslogsdelivery` akun menulis file log ke dalam buket. Jika akun Anda tidak memiliki izin yang diperlukan untuk memperbarui ACL, membuat atau memperbarui distribusi akan gagal.  
Dalam beberapa keadaan, jika Anda secara program mengirimkan permintaan untuk membuat buket tetapi buket dengan nama yang ditentukan sudah ada, S3 mengatur ulang izin pada buket ke nilai default. Jika Anda mengonfigurasi CloudFront untuk menyimpan log akses di bucket S3 dan Anda berhenti mendapatkan log di bucket itu, periksa izin di bucket untuk memastikan bahwa CloudFront memiliki izin yang diperlukan.

**Memulihkan ACL untuk ember**  
Jika Anda menghapus izin untuk `awslogsdelivery` pelanggan, CloudFront tidak akan dapat menyimpan log ke buket S3. Untuk mengaktifkan CloudFront untuk mulai menyimpan log untuk distribusi Anda lagi, pulihkan izin ACL dengan melakukan salah satu hal berikut:  
+ Nonaktifkan pencatatan untuk distribusi Anda CloudFront, lalu aktifkan lagi. Untuk informasi selengkapnya, lihat [Pencatatan standar](DownloadDistValuesGeneral.md#DownloadDistValuesLoggingOnOff).
+ Tambahkan izin ACL untuk `awslogsdelivery` secara manual dengan menavigasi ke bucket S3 di konsol Amazon S3 dan menambahkan izin. Untuk menambahkan ACL untuk `awslogsdelivery`, Anda harus memberikan ID kanonik untuk akun tersebut, yang merupakan di Wilayah Tiongkok:

  `c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0`

  

  Untuk informasi selengkapnya tentang menambahkan ACLs ke bucket S3, lihat [Mengonfigurasi ACLs di Panduan](https://docs.aws.amazon.com/AmazonS3/latest/userguide/managing-acls.html) Pengguna *Layanan Penyimpanan Sederhana Amazon*.

**ACL untuk setiap file log**  
Selain ACL pada buket, ada ACL pada setiap file log. Pemilik keranjang memiliki `FULL_CONTROL` izin di setiap file log, pemilik distribusi (jika berbeda dari pemilik bucket) tidak memiliki izin, dan `awslogsdelivery` akun memiliki izin baca dan tulis. 

**Menonaktifkan log**  
Jika Anda menonaktifkan logging, CloudFront tidak menghapus baik ACLs untuk bucket atau file log. Anda dapat menghapus ACLs jika diperlukan.

### Kebijakan kunci yang diperlukan untuk bucket SSE-KMS
<a name="AccessLogsKMSPermissions"></a>

Jika bucket S3 untuk log standar Anda menggunakan enkripsi sisi server dengan AWS KMS keys (SSE-KMS) dengan menggunakan kunci terkelola pelanggan, Anda harus menambahkan pernyataan berikut ke kebijakan kunci untuk kunci terkelola pelanggan Anda. Hal ini memungkinkan CloudFront untuk menulis file log ke bucket. Anda tidak dapat menggunakan SSE-KMS dengan Kunci yang dikelola AWS karena CloudFront tidak akan dapat menulis file log ke ember.

```
{
    "Sid": "Allow CloudFront to use the key to deliver logs",
    "Effect": "Allow",
    "Principal": {
        "Service": "delivery.logs.amazonaws.com"
    },
    "Action": "kms:GenerateDataKey*",
    "Resource": "*"
}
```

Jika bucket S3 untuk log standar Anda menggunakan SSE-KMS dengan [Kunci Bucket S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html), Anda juga perlu menambahkan `kms:Decrypt` izin ke pernyataan kebijakan. Dalam hal ini, pernyataan kebijakan penuh terlihat seperti berikut ini.

```
{
    "Sid": "Allow CloudFront to use the key to deliver logs",
    "Effect": "Allow",
    "Principal": {
        "Service": "delivery.logs.amazonaws.com"
    },
    "Action": [
        "kms:GenerateDataKey*",
        "kms:Decrypt"
    ],
    "Resource": "*"
}
```

**catatan**  
Saat Anda mengaktifkan SSE-KMS untuk bucket S3 Anda, tentukan ARN lengkap untuk kunci yang dikelola pelanggan. Untuk informasi selengkapnya, lihat [Menentukan enkripsi sisi server dengan AWS KMS keys (SSE-KMS)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/specifying-kms-encryption.html) di Panduan Pengguna Layanan Penyimpanan Sederhana *Amazon*.

## Aktifkan pencatatan standar (lama)
<a name="standard-logs-legacy-enable"></a>

Untuk mengaktifkan log standar, gunakan CloudFront konsol atau CloudFront API.

**Contents**
+ [

### Aktifkan pencatatan standar (lama) (CloudFront konsol)
](#standard-logs-legacy-enable-console)
+ [

### Aktifkan pencatatan standar (lama) (CloudFront API)
](#standard-logs-legacy-enable-api)

### Aktifkan pencatatan standar (lama) (CloudFront konsol)
<a name="standard-logs-legacy-enable-console"></a>

**Untuk mengaktifkan log standar untuk CloudFront distribusi (konsol)**

1. Gunakan CloudFront konsol untuk membuat [distribusi baru](distribution-web-creating-console.md) atau [memperbarui yang sudah ada](HowToUpdateDistribution.md#HowToUpdateDistributionProcedure).

1. Untuk bagian **Pencatatan standar**, untuk **pengiriman Log**, pilih **Aktif**.

1. **(Opsional) Untuk **pencatatan Cookie**, pilih Aktif jika Anda ingin menyertakan cookie di log Anda.** Untuk informasi selengkapnya, lihat [Pencatatan cookie](DownloadDistValuesGeneral.md#DownloadDistValuesCookieLogging).
**Tip**  
Cookie logging adalah pengaturan global yang berlaku untuk *semua* log standar untuk distribusi Anda. Anda tidak dapat mengganti pengaturan ini untuk tujuan pengiriman terpisah.

1. Untuk bagian **Kirim ke**, tentukan **Amazon S3 (Legacy)**.

1. Tentukan bucket Amazon S3 Anda. Jika Anda belum memilikinya, Anda dapat memilih **Buat** atau melihat dokumentasi untuk [membuat ember](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html).

1. (Opsional) Untuk **awalan Log**, tentukan string, jika ada, yang ingin Anda awalan CloudFront ke nama file log akses untuk distribusi ini, misalnya,. `exampleprefix/` The trailing slash ( / ) adalah opsional tetapi dianjurkan untuk menyederhanakan browsing file log Anda. Untuk informasi selengkapnya, lihat [Awalan log](DownloadDistValuesGeneral.md#DownloadDistValuesLogPrefix).

1. Selesaikan langkah-langkah untuk memperbarui atau membuat distribusi Anda.

1. Dari halaman **Log**, verifikasi bahwa status log standar **Diaktifkan** di sebelah distribusi.

   Untuk informasi selengkapnya tentang pengiriman logging standar dan bidang log, lihat[Referensi logging standar](standard-logs-reference.md).

### Aktifkan pencatatan standar (lama) (CloudFront API)
<a name="standard-logs-legacy-enable-api"></a>

Anda juga dapat menggunakan CloudFront API untuk mengaktifkan log standar untuk distribusi Anda. 

**Untuk mengaktifkan log standar untuk distribusi (CloudFront API)**
+ Gunakan operasi [CreateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistribution.html)atau [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html)API dan konfigurasikan [LoggingConfig](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_LoggingConfig.html)objek.

## Edit pengaturan logging standar
<a name="ChangeSettings"></a>

Anda dapat mengaktifkan atau menonaktifkan logging, mengubah bucket Amazon S3 tempat log Anda disimpan, dan mengubah awalan untuk file log menggunakan [CloudFront konsol atau API](https://console.aws.amazon.com/cloudfront/v4/home). CloudFront Perubahan Anda pada pengaturan log mulai berlaku dalam 12 jam.

Untuk informasi selengkapnya, lihat topik berikut:
+ Untuk memperbarui distribusi menggunakan CloudFront konsol, lihat[Perbarui distribusi](HowToUpdateDistribution.md).
+ Untuk memperbarui distribusi menggunakan CloudFront API, lihat [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html)di *Referensi Amazon CloudFront API*.

## Mengirim log ke Amazon S3
<a name="standard-logs-in-s3"></a>

Saat Anda mengirim log ke Amazon S3, log Anda muncul dalam format berikut.

### Format nama file
<a name="AccessLogsFileNaming"></a>

Nama setiap file log yang CloudFront disimpan di bucket Amazon S3 Anda menggunakan format nama file berikut:

`<optional prefix>/<distribution ID>.YYYY-MM-DD-HH.unique-ID.gz`

Tanggal dan waktu berada dalam Waktu Universal Terkoordinasi (UTC).

Misalnya, jika Anda menggunakan `example-prefix` karena prefiks, dan ID distribusi Anda adalah `EMLARXS9EXAMPLE`, nama file Anda terlihat mirip dengan ini:

`example-prefix/EMLARXS9EXAMPLE.2019-11-14-20.RT4KCN4SGK9.gz`

Saat Anda mengaktifkan pencatatan untuk distribusi, Anda dapat menentukan prefiks opsional untuk nama file, sehingga Anda dapat melacak file log yang terkait dengan distribusi mana. Jika Anda menyertakan nilai untuk awalan file log dan awalan Anda tidak diakhiri dengan garis miring (`/`), CloudFront tambahkan satu secara otomatis. Jika awalan Anda diakhiri dengan garis miring ke depan, jangan CloudFront tambahkan yang lain.

`.gz`Di akhir nama file menunjukkan bahwa CloudFront telah dikompresi file log menggunakan gzip.

## Format file log standar
<a name="LogFileFormat"></a>

Setiap entri dalam file log memberikan detail tentang permintaan penampil tunggal. File log memiliki karakteristik sebagai berikut:
+ Gunakan [Format file log yang diperluas W3C](https://www.w3.org/TR/WD-logfile.html).
+ Berisi nilai yang dipisahkan dengan tab.
+ Berisi catatan yang tidak selalu kronologis.
+ Berisi dua baris header: satu dengan versi format file, dan satu lagi yang mencantumkan kolom W3C yang disertakan dalam setiap catatan.
+ Berisi URL berkode setara untuk spasi dan karakter tertentu lainnya dalam nilai kolom.

  Ekuivalen berkode URL digunakan untuk karakter berikut ini:
  + Kode karakter ASCII 0 melalui 32, inklusif
  + Kode karakter ASCII 127 dan lebih tinggi
  + Semua karakter dalam tabel berikut

  Standar pengkodean URL ditetapkan dalam [RFC 1738](https://tools.ietf.org/html/rfc1738.html).


|  Nilai yang dikodekan URL  |  Karakter  | 
| --- | --- | 
|  %3C  |  <  | 
|  %3E  |  >  | 
|  %22  |  "  | 
|  %23  |  \$1  | 
|  %25  |  %  | 
|  %7B  |  \$1  | 
|  %7D  |  \$1  | 
|  %7C  |  \$1  | 
|  %5C  |  \$1  | 
|  %5E  |  ^  | 
|  %7E  |  \$1  | 
|  %5B  |  [  | 
|  %5D  |  ]  | 
|  %60  |  `  | 
|  %27  |  '  | 
|  %20  |  yang lebih besar  | 

## Hapus file log
<a name="DeletingLogFiles"></a>

CloudFront tidak secara otomatis menghapus file log dari bucket Amazon S3 Anda. Untuk informasi tentang menghapus file log dari bucket Amazon S3, [lihat Menghapus](https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjects.html) objek di Panduan Pengguna Konsol *Layanan Penyimpanan Sederhana Amazon*.

## Harga
<a name="AccessLogsCharges"></a>

Pencatatan standar adalah fitur opsional dari CloudFront. CloudFront tidak mengenakan biaya untuk mengaktifkan log standar. Namun, Anda memperoleh biaya Amazon S3 biasa untuk menyimpan dan mengakses file di Amazon S3. Anda dapat menghapusnya kapan saja.

Untuk informasi selengkapnya tentang harga Amazon S3, lihat [Harga Amazon S3](https://aws.amazon.com/s3/pricing/).

Untuk informasi selengkapnya tentang CloudFront harga, lihat [CloudFront Harga](https://aws.amazon.com/cloudfront/pricing/).

# Referensi logging standar
<a name="standard-logs-reference"></a>

Bagian berikut berlaku untuk logging standar (v2) dan logging standar (legacy).

**Topics**
+ [

## Waktu pengiriman file log
](#access-logs-timing)
+ [

## Bagaimana permintaan dicatat saat URL atau header permintaan melebihi ukuran maksimum
](#access-logs-request-URL-size)
+ [

## Bidang file log
](#BasicDistributionFileFormat)
+ [

## Menganalisis log
](#access-logs-analyzing)

## Waktu pengiriman file log
<a name="access-logs-timing"></a>

CloudFront mengirimkan log untuk distribusi hingga beberapa kali dalam satu jam. Secara umum, file log berisi informasi tentang permintaan yang CloudFront diterima selama periode waktu tertentu. CloudFront biasanya mengirimkan file log untuk periode waktu tersebut ke tujuan Anda dalam waktu satu jam dari peristiwa yang muncul di log. Namun, perhatikan bahwa beberapa atau semua entri file log untuk periode waktu terkadang dapat tertunda hingga 24 jam. Ketika entri log tertunda, CloudFront simpan dalam file log yang nama file termasuk tanggal dan waktu periode di mana permintaan *terjadi*, bukan tanggal dan waktu ketika file dikirim.

Saat membuat file log, CloudFront konsolidasikan informasi untuk distribusi Anda dari semua lokasi tepi yang menerima permintaan untuk objek Anda selama periode waktu yang dicakup oleh file log.

CloudFront dapat menyimpan lebih dari satu file untuk jangka waktu tergantung pada berapa banyak permintaan yang CloudFront diterima untuk objek yang terkait dengan distribusi.

CloudFront mulai mengirimkan log akses dengan andal sekitar empat jam setelah Anda mengaktifkan pencatatan. Anda mungkin mendapatkan beberapa log akses sebelum waktu tersebut.

**catatan**  
Jika tidak ada pengguna yang meminta objek Anda selama periode waktu tersebut, Anda tidak akan menerima file log untuk periode tersebut.

## Bagaimana permintaan dicatat saat URL atau header permintaan melebihi ukuran maksimum
<a name="access-logs-request-URL-size"></a>

Jika ukuran total semua header permintaan, termasuk cookie, melebihi 20 KB, atau jika URL melampaui 8192 byte, CloudFront tidak dapat menguraikan permintaan sepenuhnya dan tidak dapat mencatatnya. Karena permintaan tersebut tidak dicatat, Anda tidak akan melihat kode status kesalahan HTTP kembali.

Jika badan permintaan melebihi ukuran maksimum, permintaan akan dicatat, termasuk kode status kesalahan HTTP.

## Bidang file log
<a name="BasicDistributionFileFormat"></a>

File log untuk distribusi berisi 33 bidang. Daftar berikut berisi setiap nama kolom, secara berurutan, bersama dengan deskripsi informasi di bidang tersebut.

1. **`date`**

   Tanggal di mana peristiwa terjadi dalam format `YYYY-MM-DD`. Misalnya, `2019-06-30`. Tanggal dan waktu berada dalam Waktu Universal Terkoordinasi (UTC). Untuk WebSocket koneksi, ini adalah tanggal ketika koneksi ditutup.

1. **`time`**

   Waktu ketika CloudFront server selesai menanggapi permintaan (dalam UTC), misalnya,. `01:42:39` Untuk WebSocket koneksi, ini adalah waktu ketika koneksi ditutup.

1. **`x-edge-location`**

   Lokasi tepi yang melayani permintaan. Setiap lokasi tepi diidentifikasi oleh kode tiga huruf dan nomor yang ditetapkan secara sewenang-wenang (misalnya, DFW3). Kode tiga huruf biasanya sesuai dengan kode bandara International Air Transport Association (IATA) untuk bandara di dekat lokasi geografis lokasi tepi. (Ringkasan ini mungkin berubah di masa mendatang.)

1. **`sc-bytes`**

   Jumlah total byte yang dikirim server ke penampil sebagai respons terhadap permintaan, termasuk header. Untuk WebSocket dan koneksi gRPC, ini adalah jumlah total byte yang dikirim dari server ke klien melalui koneksi.

1. **`c-ip`**

   Alamat IP penampil yang membuat permintaan, misalnya, `192.0.2.183` atau `2001:0db8:85a3::8a2e:0370:7334`. Jika penampil menggunakan proksi HTTP atau penyeimbang beban untuk mengirim permintaan, nilai bidang ini adalah alamat IP dari perantara atau penyeimbang beban. Lihat juga `x-forwarded-for` bidang.

1. **`cs-method`**

   Metode permintaan HTTP yang diterima dari penampil.

1. **`cs(Host)`**

   Nama domain CloudFront distribusi (misalnya, d111111abcdef8.cloudfront.net).

1. **`cs-uri-stem`**

   Bagian URL permintaan yang mengidentifikasi jalur dan objek (misalnya, `/images/cat.jpg`). Tanda tanya (?) dalam URLs dan string kueri tidak termasuk dalam log.

1. **`sc-status`**

   Berisi salah satu nilai berikut:
   + Kode status HTTP dari respon server (misalnya,`200`).
   + `000`, yang menunjukkan bahwa penampil menutup koneksi sebelum server dapat merespons permintaan. Jika penampil menutup koneksi setelah server mulai mengirim respons, bidang ini berisi kode status HTTP dari respons yang mulai dikirim server.

1. **`cs(Referer)`**

   Nilai dari `Referer` header dalam permintaan. Ini adalah nama domain yang membuat permintaan. Perujuk umum termasuk mesin pencari, situs web lain yang terhubung langsung ke objek Anda, dan situs web Anda sendiri.

1. **`cs(User-Agent)`**

   Nilai dari `User-Agent` header dalam permintaan. `User-Agent` header mengidentifikasi sumber permintaan, seperti jenis perangkat dan peramban yang mengirimkan permintaan atau, jika permintaan berasal dari mesin pencari, mesin pencari mana.

1. **`cs-uri-query`**

   Bagian utas kueri URL permintaan, jika ada.

   Ketika URL tidak berisi string kueri, nilai bidang ini adalah tanda hubung (-). Untuk informasi selengkapnya, lihat [Konten cache berdasarkan parameter string kueri](QueryStringParameters.md).

1. **`cs(Cookie)`**

   `Cookie` header dalam permintaan, termasuk nama—pasangan nilai dan atribut terkait.

   Jika Anda mengaktifkan pencatatan cookie, CloudFront catat cookie di semua permintaan terlepas dari cookie mana yang Anda pilih untuk diteruskan ke asal. Ketika permintaan tidak menyertakan header cookie, nilai bidang ini adalah tanda hubung (-). Untuk informasi selengkapnya tentang cookie, lihat [Konten cache berdasarkan cookie](Cookies.md).

1. **`x-edge-result-type`**

   Bagaimana server menggolongkan respons setelah byte terakhir meninggalkan server. Dalam beberapa kasus, jenis hasil dapat berubah antara waktu saat server siap mengirimkan respons dan waktu saat server selesai mengirimkan respons. Lihat juga `x-edge-response-result-type` bidang.

   Misalnya, dalam streaming HTTP, seandainya server menemukan segmen aliran di cache. Dalam skenario itu, nilai kolom ini biasanya adalah `Hit`. Namun, jika penampil menutup koneksi sebelum server mengirimkan seluruh segmen, jenis hasil akhir (dan nilai kolom ini) adalah `Error`.

   WebSocket dan koneksi gRPC akan memiliki nilai `Miss` untuk bidang ini karena kontennya tidak dapat di-cache dan diproksi langsung ke asal.

   Nilai yang mungkin termasuk:
   + `Hit` – Server melayani objek ke penampil dari cache.
   + `RefreshHit` – Server menemukan objek dalam cache tetapi objek telah kedaluwarsa, sehingga server menghubungi asal untuk memverifikasi bahwa cache memiliki versi terbaru dari objek tersebut.
   + `Miss` – Permintaan tidak dapat dipenuhi oleh objek di dalam cache, sehingga server meneruskan permintaan ke asal dan mengembalikan hasil ke penampil.
   + `LimitExceeded`— Permintaan ditolak karena CloudFront kuota (sebelumnya disebut sebagai batas) terlampaui.
   + `CapacityExceeded`Server mengembalikan kode status HTTP 503 karena tidak memiliki kapasitas yang cukup pada saat permintaan untuk melayani objek.
   + `Error` – Biasanya, ini berarti permintaan tersebut mengakibatkan kesalahan klien (nilai `sc-status` bidang ada di `4xx` atau kesalahan server (nilai `sc-status` bidang ada di `5xx` beragam). Jika nilai `sc-status` adalah `200`, atau jika nilai bidang ini adalah `Error` dan nilai dari `x-edge-response-result-type` bidang tidak `Error`, artinya permintaan HTTP berhasil tetapi klien terputus sebelum menerima semua byte.
   + `Redirect` – Server mengarahkan penampil dari HTTP ke HTTPS sesuai dengan pengaturan distribusi.
   + `LambdaExecutionError`— Fungsi Lambda @Edge yang terkait dengan distribusi tidak selesai karena asosiasi yang salah bentuk, batas waktu fungsi, masalah AWS ketergantungan, atau masalah ketersediaan umum lainnya.

1. **`x-edge-request-id`**

   String buram yang secara unik mengidentifikasi permintaan. CloudFront juga mengirimkan string ini di header `x-amz-cf-id` respons.

1. **`x-host-header`**

   Nilai yang disertakan oleh penampil dalam `Host` header permintaan. Jika Anda menggunakan nama CloudFront domain di objek Anda URLs (seperti d111111abcdef8.cloudfront.net), bidang ini berisi nama domain tersebut. Jika Anda menggunakan nama domain alternatif (CNAMEs) di objek Anda URLs (seperti www.example.com), bidang ini berisi nama domain alternatif.

   Jika Anda menggunakan nama domain alternatif, lihat `cs(Host)` di bidang 7 untuk nama domain yang terkait dengan distribusi Anda.

1. **`cs-protocol`**

   Protokol permintaan pemirsa (`http`,`https`,`grpcs`,`ws`, atau`wss`).

1. **`cs-bytes`**

   Jumlah total byte data yang disertakan oleh penampil, termasuk header. Untuk WebSocket dan koneksi gRPC, ini adalah jumlah total byte yang dikirim dari klien ke server pada koneksi.

1. **`time-taken`**

   Jumlah detik (hingga seperseribu detik, misalnya, 0,082) dari saat server menerima permintaan penampil hingga saat server menulis byte terakhir dari respons ke antrian output, yang diukur pada server. Dari perspektif penampil, total waktu untuk mendapatkan respons penuh akan lebih lama dari nilai ini karena latensi jaringan dan buffering TCP.

1. **`x-forwarded-for`**

   Jika penampil menggunakan proksi HTTP atau timbangantor beban untuk mengirim permintaan, nilai `c-ip` adalah alamat IP dari perantara atau pemukul beban. Dalam hal ini, bidang ini adalah alamat IP penampil yang memulai permintaan. Bidang ini dapat berisi beberapa alamat IP yang dipisahkan koma. Setiap alamat IP dapat berupa IPv4 alamat (misalnya,`192.0.2.183`) atau IPv6 alamat (misalnya,`2001:0db8:85a3::8a2e:0370:7334`).

   Jika penampil tidak menggunakan proksi HTTP atau penyeimbang beban, nilai bidang ini adalah tanda hubung (-).

1. **`ssl-protocol`**

   Ketika permintaan menggunakan HTTPS, bidang ini berisi SSL/TLS protokol yang dinegosiasikan oleh penampil dan server untuk mentransmisikan permintaan dan respons. Untuk daftar nilai yang mungkin, lihat SSL/TLS protokol yang didukung di. [Protokol dan sandi yang didukung antara pemirsa dan CloudFront](secure-connections-supported-viewer-protocols-ciphers.md)

   Saat `cs-protocol` di kolom 17 adalah `http`, nilai untuk kolom ini adalah tanda hubung (-).

1. **`ssl-cipher`**

   Ketika permintaan menggunakan HTTPS, bidang ini berisi SSL/TLS cipher yang dinegosiasikan oleh penampil dan server untuk mengenkripsi permintaan dan respons. Untuk daftar nilai yang mungkin, lihat SSL/TLS cipher yang didukung di. [Protokol dan sandi yang didukung antara pemirsa dan CloudFront](secure-connections-supported-viewer-protocols-ciphers.md)

   Saat `cs-protocol` di kolom 17 adalah `http`, nilai untuk kolom ini adalah tanda hubung (-).

1. **`x-edge-response-result-type`**

   Bagaimana server mengklasifikasikan respons tepat sebelum mengembalikan respons ke penampil. Lihat juga `x-edge-result-type` bidang. Nilai yang mungkin termasuk:
   + `Hit` – Server melayani objek ke penampil dari cache.
   + `RefreshHit` – Server menemukan objek dalam cache tetapi objek telah kedaluwarsa, sehingga server menghubungi asal untuk memverifikasi bahwa cache memiliki versi terbaru dari objek tersebut.
   + `Miss` – Permintaan tidak dapat dipenuhi oleh objek dalam cache, sehingga server meneruskan permintaan ke server asal dan mengembalikan hasil ke penampil.
   + `LimitExceeded`— Permintaan ditolak karena CloudFront kuota (sebelumnya disebut sebagai batas) terlampaui.
   + `CapacityExceeded`— Server mengembalikan kesalahan 503 karena tidak memiliki kapasitas yang cukup pada saat permintaan untuk melayani objek.
   + `Error` – Biasanya, ini berarti permintaan tersebut mengakibatkan kesalahan klien (nilai `sc-status` bidang ada di `4xx` atau kesalahan server (nilai `sc-status` bidang ada di `5xx` beragam).

     Jika nilai `x-edge-result-type` adalah `Error` dan nilai bidang ini tidak `Error`, klien terputus sebelum menyelesaikan unduhan.
   + `Redirect` – Server mengarahkan penampil dari HTTP ke HTTPS sesuai dengan pengaturan distribusi.
   + `LambdaExecutionError`— Fungsi Lambda @Edge yang terkait dengan distribusi tidak selesai karena asosiasi yang salah bentuk, batas waktu fungsi, masalah AWS ketergantungan, atau masalah ketersediaan umum lainnya.

1. **`cs-protocol-version`**

   Versi HTTP yang ditentukan penampil dalam permintaan. Nilai yang mungkin termasuk adalah `HTTP/0.9`, `HTTP/1.0`, `HTTP/1.1`, `HTTP/2.0`, dan `HTTP/3.0`.

1. **`fle-status`**

   Saat [enkripsi tingkat lapangan](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html) dikonfigurasi untuk distribusi, bidang ini berisi kode yang menunjukkan apakah badan permintaan berhasil diproses. Ketika server berhasil memproses isi permintaan, mengenkripsi nilai dalam bidang yang ditentukan, dan meneruskan permintaan ke asal, nilai bidang ini adalah `Processed`. Nilai dari `x-edge-result-type` masih dapat menunjukkan kesalahan sisi klien atau sisi server dalam kasus ini.

   Nilai yang mungkin untuk kolom ini meliputi:
   + `ForwardedByContentType` – Server meneruskan permintaan ke tempat asal tanpa mengurai atau enkripsi karena tidak ada jenis konten yang dikonfigurasi.
   + `ForwardedByQueryArgs`— Server meneruskan permintaan ke asal tanpa parsing atau enkripsi karena permintaan berisi argumen kueri yang tidak ada dalam konfigurasi untuk enkripsi tingkat lapangan.
   + `ForwardedDueToNoProfile` – Server meneruskan permintaan ke tempat asal tanpa mengurai atau enkripsi karena tidak ada profil yang ditentukan dalam konfigurasi untuk enkripsi tingkat lapangan.
   + `MalformedContentTypeClientError` – Server menolak permintaan dan mengembalikan kode status HTTP 400 ke penampil karena nilai `Content-Type` header dalam format yang tidak valid.
   + `MalformedInputClientError` – Server menolak permintaan dan mengembalikan kode status HTTP 400 ke penampil karena bodi permintaan dalam format yang tidak valid.
   + `MalformedQueryArgsClientError` – Server menolak permintaan dan mengembalikan kode status HTTP 400 ke penampil karena argumen kueri kosong atau dalam format yang tidak valid.
   + `RejectedByContentType` – Server menolak permintaan dan mengembalikan kode status HTTP 400 ke penampil karena tidak ada jenis konten yang ditentukan dalam konfigurasi untuk enkripsi tingkat lapangan.
   + `RejectedByQueryArgs` – Server menolak permintaan dan mengembalikan kode status HTTP 400 ke penampil karena tidak ada alasan kueri yang ditentukan dalam konfigurasi untuk enkripsi tingkat lapangan.
   + `ServerError` – Server asal mengembalikan kesalahan.

   Jika permintaan melebihi kuota enkripsi tingkat lapangan (sebelumnya disebut sebagai batas), bidang ini berisi salah satu kode kesalahan berikut, dan server mengembalikan kode status HTTP 400 ke penampil. Untuk daftar kuota saat ini pada enkripsi tingkat lapangan, lihat [Kuotas pada enkripsi tingkat lapangan](cloudfront-limits.md#limits-field-level-encryption).
   + `FieldLengthLimitClientError` – Kolom yang dikonfigurasi untuk dienkripsi melebihi panjang maksimum yang diizinkan.
   + `FieldNumberLimitClientError` – Permintaan agar distribusi dikonfigurasi untuk mengenkripsi berisi lebih dari jumlah kolom yang diperbolehkan.
   + `RequestLengthLimitClientError` – Panjang badan permintaan melebihi panjang maksimum yang diperbolehkan ketika enkripsi tingkat lapangan dikonfigurasi.

   Jika enkripsi tingkat bidang tidak dikonfigurasi untuk distribusi, nilai bidang ini adalah tanda hubung (-).

1. **`fle-encrypted-fields`**

   Jumlah bidang [enkripsi tingkat lapangan yang dienkripsi](field-level-encryption.md) dan diteruskan oleh server ke asal. CloudFront server mengalirkan permintaan yang diproses ke asal saat mereka mengenkripsi data, sehingga bidang ini dapat memiliki nilai meskipun nilainya `fle-status` adalah kesalahan.

   Jika enkripsi tingkat bidang tidak dikonfigurasi untuk distribusi, nilai bidang ini adalah tanda hubung (-).

1. **`c-port`**

   Nomor port permintaan dari penampil.

1. **`time-to-first-byte`**

   Jumlah detik antara menerima permintaan dan menulis byte pertama respons, sebagaimana diukur pada server.

1. **`x-edge-detailed-result-type`**

   Bidang ini berisi nilai yang sama dengan `x-edge-result-type` bidang, kecuali dalam kasus berikut:
   + Ketika objek disajikan ke penampil dari lapisan [Origin Shield](origin-shield.md), bidang ini berisi`OriginShieldHit`.
   + Ketika objek tidak dalam CloudFront cache dan respons dihasilkan oleh [permintaan asal fungsi Lambda @Edge](lambda-at-the-edge.md), bidang ini berisi. `MissGeneratedResponse`
   + Ketika nilai bidang adalah`Error`, `x-edge-result-type` bidang ini berisi salah satu nilai berikut dengan informasi lebih lanjut tentang kesalahan:
     + `AbortedOrigin` – Server mengalami masalah dengan asal usul.
     + `ClientCommError` – Respons ke penampil terganggu karena masalah komunikasi antara server dan penampil.
     + `ClientGeoBlocked`— Distribusi dikonfigurasi untuk menolak permintaan dari lokasi geografis pemirsa.
     + `ClientHungUpRequest` – Penampil berhenti sebelum waktunya saat mengirim permintaan.
     + `Error`— Terjadi kesalahan yang jenis kesalahannya tidak sesuai dengan kategori lainnya. Jenis kesalahan ini dapat terjadi saat server menjalankan respons kesalahan dari cache.
     + `InvalidRequest` – Server menerima permintaan yang tidak valid dari penampil.
     + `InvalidRequestBlocked` – Akses ke sumber daya yang diminta diblokir.
     + `InvalidRequestCertificate`— Distribusi tidak cocok dengan SSL/TLS sertifikat tempat koneksi HTTPS dibuat.
     + `InvalidRequestHeader` Permintaan mengandung header yang tidak valid.
     + `InvalidRequestMethod` – Distribusi tidak dikonfigurasi untuk menangani metode permintaan HTTP yang digunakan. Ini dapat terjadi ketika distribusi hanya mendukung permintaan yang dapat disimpan.
     + `OriginCommError`— Permintaan habis waktu saat menghubungkan ke asal, atau membaca data dari asal.
     + `OriginConnectError`— Server tidak dapat terhubung ke asal.
     + `OriginContentRangeLengthError`— `Content-Length` Header dalam respons asal tidak cocok dengan panjang di `Content-Range` header.
     + `OriginDnsError`— Server tidak dapat menyelesaikan nama domain asal.
     + `OriginError` - Asal memberikan jawaban yang salah.
     + `OriginHeaderTooBigError` – Header yang dikembalikan oleh asalnya terlalu besar untuk diproses oleh server edge.
     + `OriginInvalidResponseError` – Asal memberikan respons tidak valid.
     + `OriginReadError`— Server tidak bisa membaca dari asalnya.
     + `OriginWriteError`— Server tidak bisa menulis ke asal.
     + `OriginZeroSizeObjectError` – Objek seukuran nol yang dikirim dari sumber mengakibatkan kesalahan.
     + `SlowReaderOriginError` – Penampil lambat untuk membaca pesan yang menyebabkan kesalahan asal.

1. **`sc-content-type`**

   Nilai HTTP `Content-Type` header respons.

1. **`sc-content-len`**

   Nilai HTTP `Content-Length` header respons.

1. **`sc-range-start`**

   Saat tanggapan berisi HTTP `Content-Range` header, kolom ini berisi nilai mulai rentang.

1. **`sc-range-end`**

   Saat tanggapan berisi HTTP `Content-Range` header, kolom ini berisi nilai akhir rentang.

1. **`distribution-tenant-id`**

   ID penyewa distribusi.

1. **`connection-id`**

   Pengenal unik untuk koneksi TLS. 

   Anda harus mengaktifkan MTL untuk distribusi Anda sebelum Anda bisa mendapatkan informasi untuk bidang ini. Untuk informasi selengkapnya, lihat [Otentikasi TLS timbal balik dengan CloudFront (Viewer mTLS)Asal TLS timbal balik dengan CloudFront](mtls-authentication.md).

   

Berikut ini adalah contoh file log untuk distribusi.

```
#Version: 1.0
#Fields: date time x-edge-location sc-bytes c-ip cs-method cs(Host) cs-uri-stem sc-status cs(Referer) cs(User-Agent) cs-uri-query cs(Cookie) x-edge-result-type x-edge-request-id x-host-header cs-protocol cs-bytes time-taken x-forwarded-for ssl-protocol ssl-cipher x-edge-response-result-type cs-protocol-version fle-status fle-encrypted-fields c-port time-to-first-byte x-edge-detailed-result-type sc-content-type sc-content-len sc-range-start sc-range-end
2019-12-04	21:02:31	LAX1	392	192.0.2.100	GET	d111111abcdef8.cloudfront.net	/index.html	200	-	Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/78.0.3904.108%20Safari/537.36	-	-	Hit	SOX4xwn4XV6Q4rgb7XiVGOHms_BGlTAC4KyHmureZmBNrjGdRLiNIQ==	d111111abcdef8.cloudfront.net	https	23	0.001	-	TLSv1.2	ECDHE-RSA-AES128-GCM-SHA256	Hit	HTTP/2.0	-	-	11040	0.001	Hit	text/html	78	-	-
2019-12-04	21:02:31	LAX1	392	192.0.2.100	GET	d111111abcdef8.cloudfront.net	/index.html	200	-	Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/78.0.3904.108%20Safari/537.36	-	-	Hit	k6WGMNkEzR5BEM_SaF47gjtX9zBDO2m349OY2an0QPEaUum1ZOLrow==	d111111abcdef8.cloudfront.net	https	23	0.000	-	TLSv1.2	ECDHE-RSA-AES128-GCM-SHA256	Hit	HTTP/2.0	-	-	11040	0.000	Hit	text/html	78	-	-
2019-12-04	21:02:31	LAX1	392	192.0.2.100	GET	d111111abcdef8.cloudfront.net	/index.html	200	-	Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/78.0.3904.108%20Safari/537.36	-	-	Hit	f37nTMVvnKvV2ZSvEsivup_c2kZ7VXzYdjC-GUQZ5qNs-89BlWazbw==	d111111abcdef8.cloudfront.net	https	23	0.001	-	TLSv1.2	ECDHE-RSA-AES128-GCM-SHA256	Hit	HTTP/2.0	-	-	11040	0.001	Hit	text/html	78	-	-	
2019-12-13	22:36:27	SEA19-C1	900	192.0.2.200	GET	d111111abcdef8.cloudfront.net	/favicon.ico	502	http://www.example.com/	Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/78.0.3904.108%20Safari/537.36	-	-	Error	1pkpNfBQ39sYMnjjUQjmH2w1wdJnbHYTbag21o_3OfcQgPzdL2RSSQ==	www.example.com	http	675	0.102	-	-	-	Error	HTTP/1.1	-	-	25260	0.102	OriginDnsError	text/html	507	-	-
2019-12-13	22:36:26	SEA19-C1	900	192.0.2.200	GET	d111111abcdef8.cloudfront.net	/	502	-	Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/78.0.3904.108%20Safari/537.36	-	-	Error	3AqrZGCnF_g0-5KOvfA7c9XLcf4YGvMFSeFdIetR1N_2y8jSis8Zxg==	www.example.com	http	735	0.107	-	-	-	Error	HTTP/1.1	-	-	3802	0.107	OriginDnsError	text/html	507	-	-
2019-12-13	22:37:02	SEA19-C2	900	192.0.2.200	GET	d111111abcdef8.cloudfront.net	/	502	-	curl/7.55.1	-	-	Error	kBkDzGnceVtWHqSCqBUqtA_cEs2T3tFUBbnBNkB9El_uVRhHgcZfcw==	www.example.com	http	387	0.103	-	-	-	Error	HTTP/1.1	-	-	12644	0.103	OriginDnsError	text/html	507	-	-
```

## Menganalisis log
<a name="access-logs-analyzing"></a>

Karena Anda dapat menerima beberapa log akses per jam, kami sarankan Anda menggabungkan semua file log yang Anda terima untuk periode waktu tertentu ke dalam satu file. Anda kemudian dapat menganalisis data untuk periode tersebut dengan lebih akurat dan lengkap.

Salah satu cara untuk menganalisis log akses Anda adalah dengan menggunakan [Amazon Athena](https://aws.amazon.com/athena/). Athena adalah layanan kueri interaktif yang dapat membantu Anda menganalisis data untuk AWS layanan, termasuk. CloudFront Untuk mempelajari selengkapnya, lihat [Menanyakan CloudFront Log Amazon](https://docs.aws.amazon.com/athena/latest/ug/cloudfront-logs.html) di Panduan *Pengguna Amazon Athena*.

Selain itu, posting AWS blog berikut membahas beberapa cara untuk menganalisis log akses.
+ [Amazon CloudFront Request Logging](https://aws.amazon.com/blogs/aws/amazon-cloudfront-request-logging/) (untuk konten yang dikirimkan melalui HTTP)
+ [ CloudFront Log yang Ditingkatkan, Sekarang Dengan String Kueri](https://aws.amazon.com/blogs/aws/enhanced-cloudfront-logs-now-with-query-strings/)