Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
statistik
Gunakan stats
untuk membuat visualisasi data log Anda seperti diagram batang, diagram garis, dan bagan area bertumpuk. Ini membantu Anda mengidentifikasi pola dalam data log Anda dengan lebih efisien. CloudWatch Log Insights menghasilkan visualisasi untuk kueri yang menggunakan stats
fungsi dan satu atau beberapa fungsi agregasi.
Misalnya, kueri berikut dalam grup log Route 53 mengembalikan visualisasi yang menunjukkan distribusi catatan Route 53 per jam, berdasarkan jenis kueri.
stats count(*) by queryType, bin(1h)
Semua kueri tersebut dapat menghasilkan diagram batang. Jika kueri Anda menggunakan fungsi bin()
untuk mengelompokkan data dengan satu bidang dari waktu ke waktu, Anda juga dapat melihat diagram garis dan diagram area bertumpuk.
Satuan waktu dan singkatan berikut didukung dengan bin
fungsi tersebut. Untuk semua unit dan singkatan yang menyertakan lebih dari satu karakter, menambahkan s ke pluralisasi didukung. Jadi keduanya hr
dan hrs
bekerja untuk menentukan jam.
millisecond
ms
msec
second
s
sec
minute
m
min
hour
h
hr
day
d
week
w
month
mo
mon
quarter
q
qtr
year
y
yr
Topik
Visualisasikan data deret waktu
Visualisasi deret waktu dapat digunakan dengan kueri yang memiliki karakteristik berikut:
-
Kueri berisi satu atau beberapa fungsi agregasi. Untuk informasi selengkapnya, lihat Aggregation Functions in the Stats Command.
-
Kueri menggunakan fungsi
bin()
untuk mengelompokkan data dengan satu bidang.
Kueri-kueri ini dapat menghasilkan diagram garis, diagram area bertumpuk, diagram batang, dan diagram lingkaran.
Contoh
Untuk tutorial lengkap, lihat Tutorial: Jalankan kueri yang menghasilkan visualisasi deret waktu.
Berikut adalah contoh kueri lain yang dapat digunakan untuk visualisasi deret waktu.
Kueri berikut menghasilkan visualisasi nilai rata-rata bidang myfield1
, dengan titik data yang dibuat setiap lima menit. Setiap titik data adalah agregasi dari rata-rata nilai myfield1
dari log lima menit sebelumnya.
stats avg(myfield1) by bin(5m)
Kueri berikut menghasilkan visualisasi dari tiga nilai berdasarkan pada bidang-bidang yang berbeda, dengan titik data yang dibuat setiap lima menit. Visualisasi dihasilkan karena kueri berisi fungsi agregat dan menggunakan bin()
sebagai bidang pengelompokan.
stats avg(myfield1), min(myfield2), max(myfield3) by bin(5m)
Bagan garis dan batasan bagan area bertumpuk
Pertanyaan yang membuat agregat informasi entri log, tetapi tidak menggunakan fungsi bin()
dapat menghasilkan diagram batang. Namun, kueri tidak dapat menghasilkan diagram garis atau diagram area bertumpuk. Untuk informasi selengkapnya tentang tipe kueri ini, lihat Visualisasikan data log yang dikelompokkan berdasarkan bidang.
Visualisasikan data log yang dikelompokkan berdasarkan bidang
Anda dapat menghasilkan diagram batang untuk kueri yang menggunakan fungsi stats
dan satu atau beberapa fungsi agregasi. Untuk informasi selengkapnya, lihat Aggregation Functions in the Stats Command.
Untuk melihat visualisasi, jalankan kueri Anda. Lalu pilih tab Visualization (Visualisasi), pilih panah di sebelah Line (Garis), dan pilih Bar (Batang). Visualisasi dibatasi hingga 100 batang dalam diagram batang.
Contoh
Untuk tutorial lengkap, lihat Tutorial: Jalankan kueri yang menghasilkan visualisasi yang dikelompokkan berdasarkan bidang log. Paragraf berikut mencakup lebih banyak contoh kueri untuk visualisasi berdasarkan bidang.
Kueri log alur VPC berikut menemukan jumlah rata-rata byte yang ditransfer per sesi untuk setiap alamat tujuan.
stats avg(bytes) by dstAddr
Anda juga dapat menghasilkan diagram yang mencakup lebih dari satu batang untuk setiap nilai yang dihasilkan. Misalnya, kueri log alur VPC berikut menemukan jumlah rata-rata dan maksimum byte yang ditransfer per sesi untuk setiap alamat tujuan.
stats avg(bytes), max(bytes) by dstAddr
Kueri berikut menemukan jumlah log kueri Amazon Route 53 untuk setiap jenis kueri.
stats count(*) by queryType
Gunakan beberapa perintah statistik dalam satu kueri
Anda dapat menggunakan sebanyak dua stats
perintah dalam satu kueri. Ini memungkinkan Anda untuk melakukan agregasi tambahan pada output agregasi pertama.
Contoh: Query dengan dua stats
perintah
Misalnya, kueri berikut pertama-tama menemukan total volume lalu lintas di tempat sampah 5 menit, kemudian menghitung volume lalu lintas tertinggi, terendah, dan rata-rata di antara tempat sampah 5 menit tersebut.
FIELDS strlen(@message) AS message_length | STATS sum(message_length)/1024/1024 as logs_mb BY bin(5m) | STATS max(logs_mb) AS peak_ingest_mb, min(logs_mb) AS min_ingest_mb, avg(logs_mb) AS avg_ingest_mb
Contoh: Menggabungkan beberapa perintah statistik dengan fungsi lain sepertifilter
,, fields
bin
Anda dapat menggabungkan dua stats
perintah dengan perintah lain seperti filter
dan fields
dalam satu kueri. Misalnya, kueri berikut menemukan jumlah alamat IP yang berbeda dalam sesi dan menemukan jumlah sesi berdasarkan platform klien, memfilter alamat IP tersebut, dan akhirnya menemukan rata-rata permintaan sesi per platform klien.
STATS count_distinct(client_ip) AS session_ips, count(*) AS requests BY session_id, client_platform | FILTER session_ips > 1 | STATS count(*) AS multiple_ip_sessions, sum(requests) / count(*) AS avg_session_requests BY client_platform
Anda dapat menggunakan bin
dan dateceil
berfungsi dalam kueri dengan beberapa stats
perintah. Misalnya, kueri berikut pertama-tama menggabungkan pesan menjadi blok 5 menit, kemudian menggabungkan blok 5 menit tersebut menjadi blok 10 menit dan menghitung volume lalu lintas tertinggi, terendah, dan rata-rata dalam setiap blok 10 menit.
FIELDS strlen(@message) AS message_length | STATS sum(message_length) / 1024 / 1024 AS logs_mb BY BIN(5m) as @t | STATS max(logs_mb) AS peak_ingest_mb, min(logs_mb) AS min_ingest_mb, avg(logs_mb) AS avg_ingest_mb BY dateceil(@t, 10m)
Catatan dan batasan
Kueri dapat memiliki maksimal dua stats
perintah. Kuota ini tidak dapat diubah.
Jika Anda menggunakan limit
perintah sort
atau, itu harus muncul setelah stats
perintah kedua. Jika sebelum stats
perintah kedua, kueri tidak valid.
Ketika kueri memiliki dua stats
perintah, sebagian hasil dari kueri tidak mulai ditampilkan sampai stats
agregasi pertama selesai.
Dalam stats
perintah kedua dalam satu kueri, Anda hanya dapat merujuk ke bidang yang didefinisikan dalam stats
perintah pertama. Misalnya, kueri berikut tidak valid karena @message
bidang tidak akan tersedia setelah stats
agregasi pertama.
FIELDS @message | STATS SUM(Fault) by Operation # You can only reference `SUM(Fault)` or Operation at this point | STATS MAX(strlen(@message)) AS MaxMessageSize # Invalid reference to @message
Bidang apa pun yang Anda referensikan setelah stats
perintah pertama harus didefinisikan dalam stats
perintah pertama itu.
STATS sum(x) as sum_x by y, z | STATS max(sum_x) as max_x by z # You can only reference `max(sum_x)`, max_x or z at this point
penting
bin
Fungsi selalu secara implisit menggunakan bidang. @timestamp
Ini berarti bahwa Anda tidak dapat menggunakan bin
dalam stats
perintah kedua tanpa menggunakan stats
perintah pertama untuk menyebarkan timestamp
bidang. Misalnya, kueri berikut tidak valid.
FIELDS strlen(@message) AS message_length | STATS sum(message_length) AS ingested_bytes BY @logStream | STATS avg(ingested_bytes) BY bin(5m) # Invalid reference to @timestamp field
Sebagai gantinya, tentukan @timestamp
bidang di stats
perintah pertama, dan kemudian Anda dapat menggunakannya dengan dateceil
stats
perintah kedua seperti pada contoh berikut.
FIELDS strlen(@message) AS message_length | STATS sum(message_length) AS ingested_bytes, max(@timestamp) as @t BY @logStream | STATS avg(ingested_bytes) BY dateceil(@t, 5m)
Fungsi untuk digunakan dengan statistik
CloudWatch Logs Insights mendukung fungsi agregasi statistik dan fungsi non-agregasi statistik.
Gunakan fungsi statsaggregation dalam stats
perintah dan sebagai argumen untuk fungsi lainnya.
Fungsi | Tipe hasil | Deskripsi |
---|---|---|
|
nomor |
Rata-rata nilai di bidang yang ditentukan. |
|
nomor |
Menghitung log acara. |
|
nomor |
Mengembalikan jumlah nilai unik untuk bidang. Jika bidang memiliki kardinalitas yang sangat tinggi (mengandung banyak nilai unik), nilai yang dikembalikan oleh |
|
LogFieldValue |
Nilai maksimum untuk bidang log ini dalam log yang dikueri. |
|
LogFieldValue |
Nilai minimum untuk bidang log ini dalam log yang dikueri. |
|
LogFieldValue |
Persentil menunjukkan posisi relatif dari nilai dalam rangkaian data. Misalnya, |
|
nomor |
Standar deviasi di bidang yang ditentukan. |
|
nomor |
Jumlah nilai di bidang yang ditentukan. |
Statistik fungsi non-agregasi
Gunakan fungsi non-agregasi dalam stats
perintah dan sebagai argumen untuk fungsi lainnya.
Fungsi | Tipe hasil | Deskripsi |
---|---|---|
|
LogField |
Mengembalikan nilai |
|
LogField |
Mengembalikan nilai |
|
LogField |
Mengembalikan nilai |
|
LogField |
Mengembalikan nilai |