Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Matematika metrik memungkinkan Anda untuk menanyakan beberapa CloudWatch metrik dan menggunakan ekspresi matematika untuk membuat deret waktu baru berdasarkan metrik ini. Anda dapat memvisualisasikan deret waktu yang dihasilkan di CloudWatch konsol dan menambahkannya ke dasbor. Dengan menggunakan AWS Lambda metrik sebagai contoh, Anda dapat membagi Errors
metrik dengan Invocations
metrik untuk mendapatkan tingkat kesalahan. Kemudian tambahkan deret waktu yang dihasilkan ke grafik di CloudWatch dasbor Anda.
Anda juga dapat melakukan matematika metrik secara terprogram, menggunakan Operasi API GetMetricData
. Untuk informasi selengkapnya, lihat GetMetricData.
Tambahkan ekspresi matematika ke CloudWatch grafik
Anda dapat menambahkan ekspresi matematika ke grafik di CloudWatch dasbor Anda. Setiap grafik dibatasi menggunakan maksimum 500 metrik dan ekspresi, sehingga Anda dapat menambahkan ekspresi matematika hanya jika grafik memiliki 499 metrik atau lebih sedikit. Ini berlaku meskipun tidak semua metrik ditampilkan pada grafik.
Untuk menambahkan ekspresi matematika ke grafik
-
Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/
. -
Buat atau sunting grafik. Setidaknya harus ada satu metrik dalam grafik.
-
Pilih Metrik bergrafik.
-
Pilih Ekspresi matematika, Mulai dengan ekspresi kosong. Garis baru muncul untuk ekspresi.
-
Di garis baru, berdasarkan kolom Detail, masukkan ekspresi matematika. Tabel di bagian Sintaksis dan Fungsi Matematika Metrik mencantumkan fungsi yang dapat Anda gunakan dalam ekspresi.
Untuk menggunakan metrik atau hasil ekspresi lain sebagai bagian dari rumus untuk ekspresi ini, gunakan nilai yang ditunjukkan di kolom Id: misalnya, m1+m2 atau e1-MIN(e1).
Anda dapat mengubah nilai Id. Ini dapat mencakup angka, huruf, garis bawah, dan harus dimulai dengan huruf kecil. Mengubah nilai Id menjadi nama yang lebih bermakna juga dapat membuat grafik lebih mudah dipahami; misalnya, mengubah m1 dan m2 menjadi kesalahan dan permintaan.
Tip
Pilih panah turun di sebelah Ekspresi Matematika untuk melihat daftar fungsi yang didukung, yang dapat Anda gunakan ketika membuat ekspresi.
-
Untuk kolom Label dari ekspresi, masukkan nama yang menjelaskan penghitungan ekspresi.
Jika hasil dari ekspresi adalah susunan deret waktu, masing-masing rangkaian waktu tersebut ditampilkan pada grafik dengan garis terpisah, dengan warna berbeda. Tepat di bawah grafik terdapat legenda untuk setiap garis dalam grafik. Untuk ekspresi tunggal yang menghasilkan beberapa deret waktu, keterangan legenda untuk deret waktu tersebut ada dalam format
Expression-Label Metric-Label
. Sebagai contoh, jika grafik mencakup metrik dengan label Kesalahan dan ekspresiFILL(METRICS(), 0) yang memiliki label Filled With 0:, satu garis dalam legenda akan Filled With 0: Errors. Agar legenda hanya menampilkan label metrik asli, aturExpression-Label
menjadi kosong.Ketika satu ekspresi menghasilkan susunan deret waktu pada grafik, Anda tidak dapat mengubah warna yang digunakan untuk setiap deret waktu tersebut.
-
Setelah menambahkan ekspresi yang diinginkan, Anda dapat menyederhanakan grafik dengan menyembunyikan beberapa metrik asli. Untuk menyembunyikan metrik atau ekspresi, hapus kotak centang di sebelah kiri bidang Id.
Sintaks dan fungsi matematika metrik
Bagian berikut menjelaskan fungsi yang tersedia untuk matematika metrik. Semua fungsi harus ditulis dalam huruf besar (seperti AVG), dan bidang Id untuk semua metrik dan ekspresi matematika harus dimulai dengan huruf kecil.
Hasil akhir ekspresi matematika harus berupa satu deret waktu atau susunan deret waktu. Beberapa fungsi menghasilkan angka skalar. Anda dapat menggunakan fungsi ini dalam fungsi yang lebih besar sehingga pada akhirnya menghasilkan satu deret waktu. Misalnya, mengambil AVG dari satu deret waktu menghasilkan angka skalar, sehingga ini tidak dapat menjadi hasil ekspresi akhir. Namun demikian, Anda dapat menggunakannya dalam fungsi m1-AVG(m1) untuk menampilkan deret waktu dari perbedaan antara setiap titik data individu dan nilai rata-rata dalam deret waktu.
Singkatan tipe data
Beberapa fungsi hanya berlaku untuk jenis data tertentu. Singkatan dalam daftar berikut digunakan dalam tabel fungsi untuk mewakili jenis data yang didukung pada setiap fungsi:
-
S mewakili angka skalar, seperti 2, -5, atau 50,25.
-
TS adalah deret waktu (serangkaian nilai untuk satu CloudWatch metrik dari waktu ke waktu): misalnya,
CPUUtilization
metrik misalnyai-1234567890abcdef0
selama tiga hari terakhir. -
TS[] adalah susunan deret waktu, seperti deret waktu untuk beberapa metrik.
-
String[] adalah susunan string.
Fungsi METRICS()
Fungsi METRICS() mengembalikan semua metrik dalam permintaan. Ekspresi matematika tidak disertakan.
Anda dapat menggunakan METRICS() dalam ekspresi yang lebih besar yang menghasilkan satu deret waktu atau susunan deret waktu. Sebagai contoh, ekspresi SUM(METRICS())mengembalikan deret waktu (TS) yang merupakan jumlah dari nilai semua metrik yang digambarkan. METRICS()/100 mengembalikan susunan deret waktu, masing-masing merupakan deret waktu yang menunjukkan setiap titik data dari salah satu metrik dibagi 100.
Anda dapat menggunakan fungsi METRICS() dengan sebuah string untuk mengembalikan hanya metrik yang digambarkan yang mengandung string tersebut dalam kolom Id mereka. Sebagai contoh, ekspresi SUM(METRICS("error")) mengembalikan deret waktu yang merupakan jumlah nilai semua metrik yang digambarkan yang memiliki ‘kesalahan’ dalam kolom Id mereka. Anda juga dapat menggunakan SUM([METRICS (“4xx”), METRICS (“5xx”)]) untuk mencocokkan beberapa string.
Fungsi aritmetika dasar
Tabel berikut mencantumkan daftar fungsi aritmetika dasar yang didukung. Nilai yang hilang dalam deret waktu dianggap 0. Jika nilai titik data menyebabkan fungsi mencoba membagi dengan nol, maka titik data diabaikan.
Operasi | Argumen | Contoh |
---|---|---|
Operator aritmetika: + - * / ^ |
S, S S, TS TS, TS S, TS[] TS, TS[] |
PERIOD(m1)/60 5 * m1 m1 - m2 SUM(100/[m1, m2]) AVG(METRICS()) METRICS()*100 |
Pengurangan uner - |
S TS TS[] |
-5*m1 -m1 SUM(-[m1, m2]) |
Operator perbandingan dan logis
Anda dapat menggunakan operator perbandingan dan logika baik dengan sepasang deret waktu maupun sepasang nilai skalar tunggal. Ketika Anda menggunakan operator perbandingan dengan sepasang deret waktu, operator mengembalikan deret waktu di mana setiap titik data adalah 0 (salah) atau 1 (benar). Jika Anda menggunakan operator perbandingan pada sepasang nilai skalar, satu nilai skalar akan dikembalikan, baik 0 maupun 1.
Ketika operator perbandingan digunakan antara dua deret waktu, dan hanya satu deret waktu yang memiliki nilai untuk time stamp tertentu, fungsi menganggap nilai yang hilang dalam deret waktu lain sebagai 0.
Anda dapat menggunakan operator logis bersama operator perbandingan, untuk membuat fungsi yang lebih kompleks.
Tabel berikut mencantumkan operator yang didukung.
Jenis operator | Operator yang didukung |
---|---|
Operator Perbandingan |
== != <= >= < > |
Operator Logis |
AND atau && OR atau || |
Untuk melihat bagaimana operator ini digunakan, misalkan kita memiliki dua deret waktu: metric1 memiliki nilai [30, 20, 0, 0]
dan metric2 memiliki nilai [20, -, 20, -]
di mana -
menunjukkan bahwa tidak ada nilai untuk timestamp tersebut.
Ekspresi | Output |
---|---|
(metric1 < metric2) |
0, 0, 1, 0 |
(metric1 >= 30) |
1, 0, 0, 0 |
(metric1 > 15 AND metric2 > 15) |
1, 0, 0, 0 |
Fungsi yang didukung untuk matematika metrik
Tabel berikut menjelaskan fungsi yang dapat Anda gunakan dalam ekspresi matematika. Masukkan semua fungsi dalam huruf besar.
Hasil akhir ekspresi matematika harus berupa satu deret waktu atau susunan deret waktu. Beberapa fungsi dalam tabel di bagian berikut menghasilkan angka skalar. Anda dapat menggunakan fungsi ini dalam fungsi yang lebih besar sehingga pada akhirnya menghasilkan satu deret waktu. Misalnya, mengambil AVG dari satu deret waktu menghasilkan angka skalar, sehingga ini tidak dapat menjadi hasil ekspresi akhir. Namun demikian, Anda dapat menggunakannya dalam fungsi m1-AVG(m1) untuk menampilkan deret waktu dari perbedaan antara setiap titik data individu dan nilai rata-rata dari titik data itu.
Dalam tabel berikut, setiap contoh dalam kolom Contoh adalah ekspresi yang menghasilkan satu deret waktu atau susunan deret waktu. Contoh ini menunjukkan cara fungsi yang mengembalikan angka skalar dapat digunakan sebagai bagian dari ekspresi yang benar guna menghasilkan satu deret waktu.
Fungsi | Argumen | Jenis pengembalian* | Deskripsi | Contoh | Didukung untuk lintas akun? |
---|---|---|---|---|---|
ABS |
TS TS[] |
TS TS[] |
Mengembalikan nilai mutlak dari setiap titik data. |
ABS(m1-m2) MIN(ABS([m1, m2])) ABS(METRICS()) |
✓ |
ANOMALY_DETECTION_BAND |
TS TS, S |
TS[] |
Mengembalikan pita deteksi anomali untuk metrik tertentu. Pita ini terdiri atas dua deret waktu, satu mewakili batas atas nilai yang diharapkan "normal" dari metrik, dan satu lagi mewakili batas bawah. Fungsi dapat menerima dua argumen. Yang pertama adalah ID metrik untuk membuat pita. Argumen kedua adalah jumlah penyimpangan baku yang digunakan untuk pita. Jika Anda tidak menentukan argumen ini, default 2 digunakan. Untuk informasi selengkapnya, lihat Menggunakan CloudWatch deteksi anomali. |
ANOMALY_DETECTION_BAND(m1) ANOMALY_DETECTION_BAND(m1,4) |
|
AVG |
TS TS[] |
S TS |
AVG dari satu deret waktu mengembalikan skalar yang mewakili rata-rata semua titik data dalam metrik. AVG dari susunan deret waktu mengembalikan satu rangkaian waktu. Nilai yang hilang dianggap sebagai 0. catatanKami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm jika Anda ingin fungsi mengembalikan skalar. Misalnya, Untuk menggunakan fungsi ini dengan alarm, terutama alarm yang memiliki tindakan Penskalaan Otomatis, kami sarankan Anda mengatur alarm untuk menggunakan M dari titik data N, di mana M < N. |
SUM([m1,m2])/AVG(m2) AVG(METRICS()) |
✓ |
CEIL |
TS TS[] |
TS TS[] |
Mengembalikan batas tertinggi setiap metrik. Batas tertinggi adalah bilangan bulat terkecil yang lebih besar dari atau sama dengan setiap nilai. |
CEIL(m1) CEIL(METRICS()) SUM(CEIL(METRICS())) |
✓ |
DATAPOINT_COUNT |
TS TS[] |
S TS |
Mengembalikan hitungan titik data yang melaporkan nilai-nilai. Ini berguna untuk menghitung rata-rata metrik yang jarang. catatanKami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm. Setiap kali alarm mengevaluasi apakah akan mengubah status, CloudWatch mencoba untuk mengambil jumlah titik data yang lebih tinggi daripada nomor yang ditentukan sebagai Periode Evaluasi. Fungsi ini berperilaku berbeda ketika data tambahan diminta. |
SUM(m1) / DATAPOINT_COUNT(m1) DATAPOINT_COUNT(METRICS()) |
✓ |
DB_PERF_INSIGHTS |
String, String, String String, String, String[] |
TS (jika diberi satu string) TS[] (jika diberi susunan string) |
Mengembalikan metrik Wawasan Performa Counter untuk basis data seperti Amazon Relational Database Service dan Amazon DocumentDB (dengan kompatibilitas MongoDB). Fungsi ini mengembalikan jumlah data yang sama yang bisa Anda dapatkan dengan langsung menanyakan Performance APIs Insights. Anda dapat menggunakan metrik ini CloudWatch untuk membuat grafik dan membuat alarm. pentingBila Anda menggunakan fungsi ini, Anda harus menentukan ID Sumber Daya Basis Data Unik dari basis data tersebut. Hal ini berbeda dengan pengidentifikasi basis data. Untuk menemukan ID sumber daya basis data di konsol Amazon RDS, pilih instans DB untuk melihat detailnya. Kemudian, pilih tab Konfigurasi. ID Sumber Daya ditampilkan di bagian Konfigurasi. DB_PERF_INSIGHTS juga akan membawa metrik Metrik Performance Insights yang diambil dengan fungsi ini tidak disimpan. CloudWatch Oleh karena itu, beberapa CloudWatch fitur seperti observabilitas lintas akun, deteksi anomali, aliran metrik, penjelajah metrik, dan Metric Insights tidak berfungsi dengan metrik Performance Insights yang Anda ambil dengan DB_PERF_INSIGHTS. Permintaan tunggal menggunakan fungsi DB_PERF_INSIGHTS dapat mengambil nomor titik data berikut.
Fungsi DB_PERF_INSIGHTS hanya mendukung panjang periode berikut:
Untuk informasi selengkapnya tentang metrik penghitung Wawasan Performa Amazon RDS, silakan lihat Metrik penghitung Wawasan Performa. Untuk informasi selengkapnya tentang metrik penghitung Wawasan Performa Amazon DocumentDB, silakan lihat Metrik penghitung Wawasan Performa. catatanMetrik resolusi tinggi dengan perincian sub-menit yang diambil oleh DB_PERF_INSIGHTS hanya berlaku untuk metrik, atau untuk DBLoadmetrik sistem operasi jika Anda telah mengaktifkan Enhanced Monitoring pada resolusi yang lebih tinggi. Untuk informasi selengkapnya tentang pemantauan yang ditingkatkan Amazon RDS, silakan lihat Memantau metrik OS dengan Pemantauan yang Ditingkatkan. . Anda dapat membuat sebuah alarm resolusi tinggi dengan menggunakan fungsi DB_PERF_INSIGHTS untuk rentang waktu maksimum selama tiga jam. Anda dapat menggunakan CloudWatch konsol untuk membuat grafik metrik yang diambil dengan fungsi DB_PERF_INSIGHTS untuk rentang waktu apa pun. |
DB_PERF_INSIGHTS ('RDS', 'db- ',' os.cpuutilization.user.avg ') ABCDEFGHIJKLMNOPQRSTUVWXY1 DB_PERF_INSIGHTS ('DOCDB, 'db- ', [' os.cpuutilization.idle.avg ',' os.cpuutilization.user.max ABCDEFGHIJKLMNOPQRSTUVWXY1 ']) |
|
DIFF |
TS TS[] |
TS TS[] |
Mengembalikan perbedaan antara setiap nilai dalam deret waktu dan nilai sebelumnya dari deret waktu tersebut. |
DIFF(m1) |
✓ |
DIFF_TIME |
TS TS[] |
TS TS[] |
Mengembalikan perbedaan dalam detik antara timestamp setiap nilai dalam deret waktu dan timestamp nilai sebelumnya dari deret waktu tersebut. |
DIFF_TIME(METRICS()) |
✓ |
FILL |
TS, [S | REPEAT | LINEAR] TS[], [TS | S | REPEAT | LINEAR] |
TS TS[] |
Mengisi nilai-nilai yang hilang dari deret waktu. Ada beberapa pilihan untuk nilai yang akan digunakan sebagai pengisi untuk nilai-nilai yang hilang:
catatanSaat menggunakan fungsi ini dalam alarm, Anda dapat mengalami masalah jika metrik Anda dipublikasikan dengan sedikit penundaan, dan menit terakhir tidak pernah memiliki data. Dalam hal ini, FILL menggantikan titik data yang hilang dengan nilai yang diminta. Ini menyebabkan titik data terbaru untuk metrik selalu menjadi nilai FILL, yang dapat mengakibatkan alarm macet dalam status OK atau status ALARM. Anda dapat mengatasi ini menggunakan alarm M dari N. Untuk informasi selengkapnya, lihat Melakukan evaluasi alarm. |
FILL(m1,10) FILL(METRICS(), 0) FILL(METRICS(), m1) FILL(m1, MIN(m1)) FILL(m1, REPEAT) FILL(METRICS(), LINEAR) |
✓ |
FIRST LAST |
TS[] |
TS |
Mengembalikan deret waktu pertama atau terakhir dari susunan deret waktu. Ini berguna ketika digunakan dengan fungsi SORT. Ini juga dapat digunakan untuk mendapatkan ambang batas tinggi dan rendah dari fungsi ANOMALY_DETECTION_BAND. |
IF(FIRST(SORT(METRICS(), AVG, DESC))>100, 1, 0) Melihat metrik teratas dari susunan, yang diurutkan oleh AVG. Ini kemudian akan mengembalikan 1 atau 0 untuk setiap titik data, tergantung pada apakah nilai titik data tersebut lebih dari 100. LAST(ANOMALY_DETECTION_BAND(m1)) mengembalikan batas atas pita prediksi anomali. |
✓ |
FLOOR |
TS TS[] |
TS TS[] |
Mengembalikan pangkat setiap metrik. Pangkat adalah bilangan bulat terbesar yang kurang dari atau sama dengan setiap nilai. |
FLOOR(m1) FLOOR(METRICS()) |
✓ |
IF |
Ekspresi IF |
TS |
Gunakan IF bersama operator perbandingan untuk memfilter titik data dari deret waktu, atau membuat deret waktu campuran yang terdiri atas beberapa deret waktu gabungan. Untuk informasi selengkapnya, lihat Menggunakan ekspresi IF. |
Sebagai contoh, silakan lihat Menggunakan ekspresi IF. |
✓ |
INSIGHT_RULE_METRIC |
INSIGHT_RULE_METRIC(ruleName, metricName) |
TS |
Gunakan INSIGHT_RULE_METRIC untuk mengekstrak statistik dari aturan di Contributor Insightsr. Untuk informasi selengkapnya, lihat Metrik grafik yang dihasilkan oleh aturan di CloudWatch. |
||
LAMBDA |
LAMBDA (LambdaFunctionName [, opsional-arg] *) |
TS TS[] |
Memanggil fungsi Lambda untuk menanyakan metrik dari sumber data yang tidak. CloudWatch Untuk informasi selengkapnya, lihat Cara meneruskan argumen ke fungsi Lambda Anda. |
||
LOG |
TS TS[] |
TS TS[] |
LOG dari deret waktu mengembalikan nilai logaritma alami dari setiap nilai dalam deret waktu. |
LOG(METRICS()) |
✓ |
LOG10 |
TS TS[] |
TS TS[] |
LOG10 dari deret waktu mengembalikan nilai logaritma basis-10 dari setiap nilai dalam deret waktu. |
LOG10 (m1) |
✓ |
MAX |
TS TS[] |
S TS |
MAX dari satu deret waktu mengembalikan skalar yang mewakili nilai maksimum semua titik data dalam metrik. Jika Anda memasukkan array deret waktu, fungsi MAX membuat dan mengembalikan deret waktu yang terdiri dari nilai tertinggi untuk setiap titik data, di antara deret waktu yang digunakan sebagai input. catatanKami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm jika Anda ingin fungsi mengembalikan skalar. Misalnya, |
MAX(m1)/m1 MAX(METRICS()) |
✓ |
METRIC_COUNT |
TS[] |
S |
Mengembalikan jumlah metrik dalam susunan deret waktu. |
m1/METRIC_COUNT(METRICS()) |
✓ |
METRICS |
kosong string |
TS[] |
Fungsi METRICS () mengembalikan semua CloudWatch metrik dalam permintaan. Ekspresi matematika tidak disertakan. Anda dapat menggunakan METRICS() dalam ekspresi yang lebih besar yang menghasilkan satu deret waktu atau susunan deret waktu. Anda dapat menggunakan fungsi METRICS() dengan sebuah string untuk mengembalikan hanya metrik yang digambarkan yang mengandung string tersebut dalam kolom Id mereka. Sebagai contoh, ekspresi SUM(METRICS("error")) mengembalikan deret waktu yang merupakan jumlah nilai semua metrik yang digambarkan yang memiliki ‘kesalahan’ dalam kolom Id mereka. Anda juga dapat menggunakan SUM([METRICS (“4xx”), METRICS (“5xx”)]) untuk mencocokkan beberapa string. |
AVG(METRICS()) SUM(METRICS("errors")) |
✓ |
MIN |
TS TS[] |
S TS |
MIN dari satu deret waktu tunggal mengembalikan skalar yang mewakili nilai minimum semua titik data dalam metrik. Jika Anda memasukkan array deret waktu, fungsi MIN membuat dan mengembalikan deret waktu yang terdiri dari nilai terendah untuk setiap titik data, di antara deret waktu yang digunakan sebagai input. Jika Anda memasukkan array deret waktu, fungsi MIN membuat dan mengembalikan deret waktu yang terdiri dari nilai terendah untuk setiap titik data, di antara deret waktu yang digunakan sebagai input. catatanKami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm jika Anda ingin fungsi mengembalikan skalar. Misalnya, |
m1-MIN(m1) MIN(METRICS()) |
✓ |
MINUTE HOUR DAY DATE MONTH YEAR EPOCH |
TS |
TS |
Fungsi-fungsi ini mengambil periode dan rentang dari deret waktu dan mengembalikan deret waktu baru yang tidak jarang di mana setiap nilai didasarkan pada timestampnya.
|
MINUTE(m1) IF(DAY(m1)<6,m1) mengembalikan metrik hanya dari hari kerja, Senin sampai Jumat. IF(MONTH(m1) == 4,m1) mengembalikan hanya metrik yang diterbitkan pada bulan April. |
✓ |
PERIOD |
TS |
S |
Mengembalikan periode metrik dalam detik. Input yang benar adalah metrik, bukan hasil ekspresi lainnya. |
m1/PERIOD(m1) |
✓ |
RATE |
TS TS[] |
TS TS[] |
Mengembalikan tingkat perubahan metrik per detik. Ini dihitung sebagai selisih antara nilai titik data terbaru dan nilai titik data sebelumnya, dibagi dengan perbedaan waktu dalam detik antara dua nilai. pentingMenyetel alarm pada ekspresi yang menggunakan fungsi RATE pada metrik dengan data jarang dapat berperilaku tidak terduga, karena rentang titik data yang diambil saat mengevaluasi alarm dapat bervariasi berdasarkan kapan titik data terakhir diterbitkan. |
RATE(m1) RATE(METRICS()) |
✓ |
REMOVE_EMPTY |
TS[] |
TS[] |
Menghapus setiap deret waktu yang tidak memiliki titik data dari susunan deret waktu. Hasilnya adalah susunan deret waktu di mana setiap rangkaian waktu memuat paling sedikit satu titik data. catatanKami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm. Setiap kali alarm mengevaluasi apakah akan mengubah status, CloudWatch mencoba untuk mengambil jumlah titik data yang lebih tinggi daripada nomor yang ditentukan sebagai Periode Evaluasi. Fungsi ini berperilaku berbeda ketika data tambahan diminta. |
REMOVE_EMPTY(METRICS()) |
✓ |
RUNNING_SUM |
TS TS[] |
TS TS[] |
Mengembalikan deret waktu dengan jumlah berjalan dari nilai dalam deret waktu asli. catatanKami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm. Setiap kali alarm mengevaluasi apakah akan mengubah status, CloudWatch mencoba untuk mengambil jumlah titik data yang lebih tinggi daripada nomor yang ditentukan sebagai Periode Evaluasi. Fungsi ini berperilaku berbeda ketika data tambahan diminta. |
RUNNING_SUM([m1,m2]) |
✓ |
SEARCH |
Ekspresi pencarian |
Satu TS atau lebih |
Mengembalikan satu deret waktu atau lebih yang sesuai dengan kriteria pencarian yang Anda tentukan. Fungsi SEARCH memungkinkan Anda menambahkan beberapa deret waktu terkait ke grafik dengan satu ekspresi. Grafik diperbarui secara dinamis untuk menyertakan metrik baru yang ditambahkan kemudian dan cocok dengan kriteria pencarian. Untuk informasi selengkapnya, lihat Gunakan ekspresi pencarian pada grafik. Anda tidak dapat membuat alarm berdasarkan ekspresi SEARCH. Hal ini karena ekspresi pencarian mengembalikan beberapa deret waktu, dan sebuah alarm yang dibuat berdasarkan ekspresi matematika hanya dapat mengawasi satu deret waktu. Jika Anda masuk ke akun pemantauan dalam observabilitas CloudWatch lintas akun, fungsi SEARCH akan menemukan metrik di akun sumber dan akun pemantauan. |
✓ | |
SERVICE_QUOTA |
TS yang merupakan metrik penggunaan |
TS |
Mengembalikan kuota layanan untuk metrik penggunaan yang diberikan. Anda dapat menggunakan ini untuk memvisualisasikan cara penggunaan saat ini dibandingkan dengan kuota, dan mengatur alarm yang memperingatkan Anda ketika mendekati kuota. Untuk informasi selengkapnya, lihat AWS metrik penggunaan. |
✓ | |
SLICE |
(TS[], S, S) atau (TS[], S) |
TS[] TS |
Mengambil sebagian dari susunan deret waktu. Ini sangat berguna jika digabungkan dengan SORT. Sebagai contoh, Anda dapat mengecualikan hasil teratas dari susunan deret waktu. Anda dapat menggunakan dua pendapat skalar untuk menentukan seperangkat deret waktu yang ingin dikembalikan. Kedua skalar menetapkan awal (inklusif) dan akhir (eksklusif) dari susunan untuk kembali. Susunan diberi indeks nol, sehingga deret waktu pertama dalam susunan adalah deret waktu 0. Atau, Anda dapat menentukan hanya satu nilai, dan CloudWatch mengembalikan semua rangkaian waktu yang dimulai dengan nilai tersebut. |
SLICE(SORT(METRICS), SUM, DESC), 0, 10) mengembalikan 10 metrik dari susunan metrik dalam permintaan yang memiliki nilai SUM tertinggi. SLICE(SORT(METRICS(), AVG, ASC), 5) mengurutkan susunan metrik berdasarkan statistik AVG, kemudian mengembalikan semua deret waktu kecuali untuk 5 dengan AVG terendah. |
✓ |
SORT |
(TS[], FUNCTION, SORT_ORDER) (TS[], FUNCTION, SORT_ORDER, S) |
TS[] |
Mengurutkan susunan deret waktu sesuai fungsi yang Anda tentukan. Fungsi yang Anda gunakan dapat berupa AVG, , MAX, atau SUM. Urutan pengurutan dapat berupa ASC untuk naik (nilai terendah terlebih dahulu) atau DESC untuk mengurutkan nilai lebih tinggi terlebih dahulu. Anda secara opsional dapat menentukan sebuah angka setelah urutan pengurutan yang bertindak sebagai batas. Sebagai contoh, menentukan batas 5 pengembalian hanya 5 deret waktu teratas dari pengurutan. Ketika fungsi matematika ini ditampilkan pada grafik, label untuk setiap metrik dalam grafik juga diurutkan dan diberi nomor. |
SORT(METRICS(), AVG, DESC, 10) menghitung nilai rata-rata setiap deret waktu, mengurutkan deret waktu dengan nilai tertinggi di awal pengurutan, dan mengembalikan hanya 10 deret waktu dengan rata-rata tertinggi. SORT(METRICS(), MAX, ASC) mengurutkan susunan metrik dengan statistik MAX, kemudian mengembalikan semuanya dalam urutan naik. |
✓ |
STDDEV |
TS TS[] |
S TS |
STDDEV dari satu deret waktu mengembalikan skalar yang mewakili standar deviasi semua titik data dalam metrik. STDDEV dari susunan deret waktu mengembalikan satu rangkaian waktu. catatanKami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm jika Anda ingin fungsi mengembalikan skalar. Misalnya, |
m1/STDDEV(m1) STDDEV(METRICS()) |
✓ |
SUM |
TS TS[] |
S TS |
SUM dari satu deret waktu mengembalikan skalar yang mewakili jumlah nilai dari semua titik data dalam metrik. AVG dari susunan deret waktu mengembalikan satu deret waktu. catatanKami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm jika Anda ingin fungsi mengembalikan skalar. Misalnya, |
SUM(METRICS())/SUM(m1) SUM([m1, m2]) SUM(METRICS("errors"))/SUM(METRICS("requests"))*100 |
✓ |
TIME_SERIES |
S |
TS |
Mengembalikan deret waktu non-jarang di mana setiap nilai diatur ke argumen skalar. |
TIME_SERIES(MAX(m1)) TIME_SERIES(5*AVG(m1)) TIME_SERIES(10) |
✓ |
*Menggunakan fungsi yang hanya mengembalikan angka skalar tidak benar, karena semua hasil akhir ekspresi harus berupa satu deret waktu atau susunan deret waktu. Alih-alih, gunakan fungsi ini sebagai bagian dari ekspresi yang lebih besar agar mengembalikan deret waktu.
Menggunakan ekspresi IF
Gunakan IF bersama operator perbandingan untuk memfilter titik data dari deret waktu, atau membuat deret waktu campuran yang terdiri atas beberapa deret waktu gabungan.
IF menggunakan argumen berikut:
IF(condition, trueValue, falseValue)
Ketentuan tersebut mengevaluasi menjadi FALSE jika nilai titik data ketentuan 0, dan menjadi TRUE jika nilai ketentuan kondisi adalah nilai lainnya, baik nilai tersebut positif maupun negatif. Jika ketentuannya adalah deret waktu, maka akan dievaluasi secara terpisah untuk setiap timestamp.
Berikut ini daftar sintaks yang valid. Untuk masing-masing sintaks ini, outputnya adalah deret waktu tunggal.
JIKA (TS
Comparison Operator
S, S | TS, S | TS)catatan
Jika TRUE tetapi
metric2
tidak memiliki titik data yang sesuai, outputnya akan menjadi 0.TS comparison operator S
IF(TS, TS, TS)
IF(TS, S, TS)
IF(TS, TS, S)
IF(TS, S, S)
IF(S, TS, TS)
Bagian berikut memberikan rincian lebih lanjut dan contoh untuk sintaks ini.
IF (TS Comparison Operator
S, skalar2 | metrik2, skalar3 | metrik3)
Nilai deret waktu output yang sesuai:
memiliki nilai skalar2 atau metrik2, jika TS S BENAR
Comparison Operator
memiliki nilai skalar3 atau metrik3, jika TS S SALAH
Comparison Operator
memiliki nilai 0 jika TS
Comparison Operator
TRUE dan titik data yang sesuai dalam metrik2 tidak ada.memiliki nilai 0 jika TS
Comparison Operator
FALSE dan titik data yang sesuai dalam metrik3 tidak ada.adalah deret waktu kosong, jika titik data yang sesuai tidak ada dalam metric3, atau jika skalar3/metric3 dihilangkan dari ekspresi
IF(metric1, metric2, metric3)
Untuk setiap titik data metric1, nilai deret waktu output yang sesuai:
memiliki nilai metric2, jika titik data yang sesuai dari metric1 TRUE.
memiliki nilai metric3, jika titik data yang sesuai dari metric1 FALSE.
memiliki nilai 0, jika titik data yang sesuai dari metric1 TRUE dan titik data yang sesuai tidak ada dalam metric2.
dijatuhkan, jika titik data metrik1 yang sesuai adalah FALSE dan titik data yang sesuai tidak ada dalam metrik3
dijatuhkan, jika titik data yang sesuai dari metric1 adalah FALSE dan metric3 dihilangkan dari ekspresi.
dijatuhkan, jika titik data metrik1 yang sesuai hilang.
Tabel berikut menunjukkan contoh untuk sintaks ini.
Metrik atau fungsi | Nilai-nilai |
---|---|
(metric1) |
[1, 1, 0, 0, -] |
(metric2) |
[30, -, 0, 0, 30] |
(metric3) |
[0, 0, 20, -, 20] |
IF(metric1, metric2, metric3) |
[30, 0, 20, 0, -] |
IF(metric1, scalar2, metric3)
Untuk setiap titik data metric1, nilai deret waktu output yang sesuai:
memiliki nilai scalar2, jika titik data yang sesuai dari metric1 TRUE.
memiliki nilai metric3, jika titik data yang sesuai dari metric1 FALSE.
diabaikan, jika titik data yang sesuai dari metric1 FALSE dan titik data yang sesuai tidak ada pada metric3, atau jika metric3 dihilangkan dari ekspresi.
Metrik atau fungsi | Nilai-nilai |
---|---|
(metric1) |
[1, 1, 0, 0, -] |
scalar2 |
5 |
(metric3) |
[0, 0, 20, -, 20] |
IF(metric1, scalar2, metric3) |
[5, 5, 20, -, -] |
IF(metric1, metric2, scalar3)
Untuk setiap titik data metric1, nilai deret waktu output yang sesuai:
memiliki nilai metric2, jika titik data yang sesuai dari metric1 TRUE.
memiliki nilai scalar3, jika titik data yang sesuai dari metric1 FALSE.
memiliki nilai 0, jika titik data yang sesuai dari metric1 TRUE dan titik data yang sesuai tidak ada dalam metric2.
diabaikan jika titik data yang sesuai pada metric1 tidak ada.
Metrik atau fungsi | Nilai-nilai |
---|---|
(metric1) |
[1, 1, 0, 0, -] |
(metric2) |
[30, -, 0, 0, 30] |
scalar3 |
5 |
IF(metric1, metric2, scalar3) |
[30, 0, 5, 5, -] |
IF(scalar1, metric2, metric3)
Nilai deret waktu output yang sesuai:
memiliki nilai metric2, jika scalar1 TRUE.
memiliki nilai metric3, jika scalar1 FALSE.
adalah deret waktu kosong, jika metrik3 dihilangkan dari ekspresi.
Gunakan contoh kasus untuk ekspresi IF
Contoh berikut menggambarkan kemungkinan penggunaan fungsi IF.
Untuk menampilkan hanya nilai metrik rendah:
IF(metric1<400, metric1)
Untuk mengubah setiap titik data dalam metrik menjadi satu dari dua nilai, untuk menunjukkan tinggi dan rendah relatif dari metrik awal:
IF(metric1<400, 10, 2)
Agar menampilkan 1 untuk setiap timestamp di mana latensi berada di atas ambang batas, dan menampilkan 0 untuk semua titik data lainnya:
IF(latency>threshold, 1, 0)
Gunakan matematika metrik dengan operasi GetMetricData API
Anda dapat menggunakan GetMetricData
untuk melakukan penghitungan menggunakan ekspresi matematika, dan juga mengambil kumpulan besar data metrik dalam satu panggilan API. Untuk informasi selengkapnya, lihat GetMetricData.
Deteksi anomali pada matematika metrik
Deteksi anomali pada matematika metrik adalah fitur yang dapat Anda gunakan untuk membuat alarm deteksi anomali pada metrik tunggal dan hasil ekspresi matematika metrik. Anda dapat menggunakan ekspresi-ekspresi ini untuk membuat grafik yang menggambarkan pita deteksi anomali. Fitur ini mendukung fungsi aritmatika dasar, operator perbandingan dan logika, dan sebagian besar fungsi lainnya.
Deteksi anomali pada matematika metrik tidak mendukung fungsi berikut:
Ekspresi yang berisi lebih dari satu ANOMALY_DETECTION_BAND di garis yang sama.
Ekspresi yang berisi lebih dari 10 metrik atau ekspresi matematika.
Ekspresi yang berisi ekspresi METRIK.
Ekspresi yang berisi fungsi SEARCH.
Ekspresi yang menggunakan fungsi DP_PERF_INSIGHTS.
Ekspresi yang menggunakan metrik dengan periode yang berbeda.
Ekspresi yang menggunakan periode lebih dari satu jam sebagai input.
Ekspresi yang menggunakan metrik resolusi tinggi sebagai input.
Untuk informasi selengkapnya tentang fitur ini, lihat Menggunakan deteksi CloudWatch anomali di CloudWatch Panduan Pengguna Amazon.