

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

# Analisis pola
<a name="CWL_AnalyzeLogData_Patterns"></a>

CloudWatch Logs Insights menggunakan algoritme pembelajaran mesin untuk menemukan *pola* saat Anda menanyakan log Anda. Pola adalah struktur teks bersama yang berulang di antara bidang log Anda. Saat melihat hasil kueri, Anda dapat memilih tab **Pola** untuk melihat pola yang ditemukan CloudWatch Log berdasarkan sampel hasil Anda. Atau, Anda dapat menambahkan `pattern` perintah ke kueri Anda untuk menganalisis pola di seluruh rangkaian peristiwa log yang cocok. 

Pola berguna untuk menganalisis kumpulan log besar karena sejumlah besar peristiwa log sering dapat dikompresi menjadi beberapa pola.

Pertimbangkan contoh berikut dari tiga peristiwa log.

```
2023-01-01 19:00:01 [INFO] Calling DynamoDB to store for resource id 12342342k124-12345
2023-01-01 19:00:02 [INFO] Calling DynamoDB to store for resource id 324892398123-12345
2023-01-01 19:00:03 [INFO] Calling DynamoDB to store for resource id 3ff231242342-12345
```

Dalam sampel sebelumnya, ketiga peristiwa log mengikuti satu pola:

```
<Time-1> [INFO] Calling DynamoDB to store for resource id <ID-2>
```

Bidang dalam pola disebut *token*. Bidang yang bervariasi dalam suatu pola, seperti ID permintaan atau stempel waktu, adalah token *dinamis*. Setiap token dinamis diwakili oleh`<string-number>`. *string*Ini adalah deskripsi dari jenis data yang diwakili oleh token. *number*Menunjukkan di mana dalam pola token ini muncul, dibandingkan dengan token dinamis lainnya.

Contoh umum token dinamis termasuk kode kesalahan, stempel waktu, dan permintaan. IDs *Nilai token* mewakili nilai tertentu dari token dinamis. Misalnya, jika token dinamis mewakili kode kesalahan HTTP, maka nilai token bisa jadi`501`.

Deteksi pola juga digunakan dalam detektor anomali CloudWatch Log dan fitur perbandingan. Untuk informasi selengkapnya, lihat [Deteksi anomali log](LogsAnomalyDetection.md) dan [Bandingkan (diff) dengan rentang waktu sebelumnya](CWL_AnalyzeLogData_Compare.md).

## Memulai dengan analisis pola
<a name="CWL_AnalyzeLogData_Patterns-GetStarted"></a>

Deteksi pola dilakukan secara otomatis dalam kueri Wawasan CloudWatch Log apa pun. Kueri yang tidak menyertakan `pattern` perintah mendapatkan peristiwa log dan pola dalam hasil.

Jika Anda menyertakan `pattern` perintah dalam kueri Anda, analisis pola dilakukan pada seluruh rangkaian peristiwa log yang cocok. Ini memberi Anda hasil pola yang lebih akurat, tetapi peristiwa log mentah tidak dikembalikan saat Anda menggunakan `pattern` perintah. Ketika kueri tidak disertakan`pattern`, hasil pola didasarkan pada 1000 peristiwa log pertama yang dikembalikan, atau pada nilai batas yang Anda gunakan dalam kueri Anda. Jika Anda menyertakan `pattern` dalam kueri, maka hasil yang ditampilkan di tab **Pola** berasal dari semua peristiwa log yang cocok dengan kueri.

**Untuk memulai analisis pola di Wawasan CloudWatch Log**

1. Buka CloudWatch konsol di [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Di panel navigasi, pilih **Log**, **Wawasan Log**.

   Pada halaman **Wawasan Log**, editor kueri berisi kueri default yang menampilkan 20 peristiwa log terbaru.

1. Hapus `| limit 20` baris di kotak kueri, sehingga kueri terlihat seperti berikut:

   ```
   fields @timestamp, @message, @logStream, @log
   | sort @timestamp desc
   ```

1. Di menu drop-down **Pilih grup log**, pilih satu atau beberapa grup log untuk kueri.

1. (Opsional) Gunakan pemilih interval waktu untuk memilih periode waktu yang ingin Anda kueri.

   Anda dapat memilih antara interval 5 menit dan 30 menit; Interval 1 jam, 3 jam, dan 12 jam; atau kerangka waktu khusus.

1. Pilih **Jalankan kueri** untuk memulai kueri.

   Saat kueri selesai berjalan, tab **Log** menampilkan tabel peristiwa log yang dikembalikan oleh kueri. Di atas tabel adalah pesan tentang berapa banyak catatan yang cocok dengan kueri, mirip dengan **Menampilkan 10.000 dari 71.101** catatan yang cocok.

1. Pilih tab **Patterns**.

1. Tabel sekarang menampilkan pola yang ditemukan dalam kueri. Karena kueri tidak menyertakan `pattern` perintah, tab ini hanya menampilkan pola yang ditemukan di antara 10.000 peristiwa log yang ditampilkan dalam tabel di tab **Log**.

   Untuk setiap pola, informasi berikut ditampilkan:
   + **Pola**, dengan setiap token dinamis ditampilkan sebagai`<string-number>`. *string*Ini adalah deskripsi dari jenis data yang diwakili oleh token. *number*Menunjukkan di mana dalam pola token ini muncul, dibandingkan dengan token dinamis lainnya.
   + **Hitungan Peristiwa**, yang merupakan berapa kali pola muncul dalam peristiwa log yang ditanyakan. Pilih judul kolom **Event count** untuk mengurutkan pola berdasarkan frekuensi.
   + **Rasio peristiwa**, yang merupakan persentase dari peristiwa log kueri yang berisi pola ini. 
   + **Jenis Keparahan**, yang akan menjadi salah satu dari yang berikut:
     + **ERROR** jika pola berisi kata **Error**.
     + **PERINGATKAN** jika pola berisi kata **Warn** tetapi tidak mengandung **Error**.
     + **INFO** jika pola tidak mengandung **Warn** atau **Error**.

     Pilih judul kolom **Info keparahan** untuk mengurutkan pola berdasarkan tingkat keparahan.

1. Sekarang ubah kueri. Ganti `| sort @timestamp desc` baris dalam kueri dengan`| pattern @message`, sehingga kueri lengkapnya adalah sebagai berikut:

   ```
   fields @timestamp, @message, @logStream, @log
   | pattern @message
   ```

1. Pilih **Run query** (Jalankan kueri).

   Saat kueri selesai, tidak ada hasil di tab **Log**. Namun, tab **Patterns** kemungkinan memiliki jumlah pola yang lebih besar yang terdaftar, tergantung pada jumlah total peristiwa log yang ditanyakan.

1. Terlepas dari apakah Anda termasuk `pattern` dalam kueri Anda, Anda dapat memeriksa lebih lanjut pola yang dikembalikan kueri. Untuk melakukannya, pilih ikon di kolom **Inspect** untuk salah satu pola. 

   Panel **pemeriksaan Pola** muncul dan menampilkan yang berikut: 
   + **Pola**. Pilih token dalam pola untuk menganalisis nilai token tersebut.
   + Histogram yang menunjukkan jumlah kemunculan pola selama rentang waktu yang ditanyakan. Ini dapat membantu Anda mengidentifikasi tren menarik seperti peningkatan tiba-tiba dalam terjadinya suatu pola.
   + Tab **Log samples** menampilkan beberapa peristiwa log yang cocok dengan pola yang dipilih.
   + Tab **Nilai Token** menampilkan nilai token dinamis yang dipilih, jika Anda telah memilihnya.
**catatan**  
Maksimal 10 nilai token ditangkap untuk setiap token. Jumlah token mungkin tidak tepat. CloudWatch Log menggunakan penghitung probabilistik untuk menghasilkan jumlah token, bukan nilai absolut.
   + Tab **pola Terkait** menampilkan pola lain yang sering terjadi mendekati waktu yang sama dengan pola yang Anda periksa. Misalnya, jika pola untuk `ERROR` pesan biasanya disertai dengan peristiwa log lain yang ditandai `INFO` dengan detail tambahan, pola itu ditampilkan di sini.

## Detail tentang perintah pola
<a name="CWL_AnalyzeLogData_Patterns-Details"></a>

Bagian ini berisi rincian lebih lanjut tentang `pattern` perintah dan penggunaannya.
+ Dalam tutorial sebelumnya, kami menghapus `sort` perintah ketika kami menambahkan `pattern` karena kueri tidak valid jika menyertakan `pattern` perintah setelah `sort` perintah. Adalah sah untuk memiliki `pattern` sebelum a`sort`.

   Untuk detail selengkapnya tentang `pattern` sintaks, lihat[pola](CWL_QuerySyntax-Pattern.md).
+ Bila Anda menggunakan `pattern` dalam query, `@message` harus menjadi salah satu bidang yang dipilih dalam `pattern` perintah.
+ Anda dapat menyertakan `filter` perintah sebelum `pattern` perintah untuk menyebabkan hanya kumpulan peristiwa log yang difilter untuk digunakan sebagai masukan untuk analisis pola.
+ Untuk melihat hasil pola untuk bidang tertentu, seperti bidang yang berasal dari `parse` perintah, gunakan`pattern @fieldname`.
+ Kueri dengan output non-log, seperti kueri dengan `stats` perintah, tidak mengembalikan hasil pola.

