Gunakan matematika metrik - Amazon CloudWatch

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

Gunakan matematika metrik

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 lebih lanjut, 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
  1. Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/.

  2. Buat atau sunting grafik. Setidaknya harus ada satu metrik dalam grafik.

  3. Pilih Metrik bergrafik.

  4. Pilih Ekspresi matematika, Mulai dengan ekspresi kosong. Garis baru muncul untuk ekspresi.

  5. 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.

  6. 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 rangkaian waktu, keterangan legenda untuk deret waktu tersebut berada 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, atur Expression-Label menjadi kosong.

    Ketika satu ekspresi menghasilkan susunan deret waktu pada grafik, Anda tidak dapat mengubah warna yang digunakan untuk setiap deret waktu tersebut.

  7. 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 misalnya i-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.

catatan

Kami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm jika Anda ingin fungsi mengembalikan skalar. Misalnya, AVG(m2). 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.

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.

catatan

Kami 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 API Wawasan Performa. Anda dapat menggunakan metrik ini CloudWatch untuk membuat grafik dan membuat alarm.

penting

Bila 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 DBLoad pada interval sub-menit.

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.

  • 1080 titik data untuk periode resolusi tinggi (1 detik, 10 detik, 30-an)

  • 1440 titik data untuk periode resolusi standar (1m, 5m, 1 jam, 1d)

Fungsi DB_PERF_INSIGHTS hanya mendukung panjang periode berikut:

  • 1 detik

  • 10 detik

  • 30 detik

  • 1 menit

  • 5 Menit

  • 1 Jam

  • 1 hari

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.

catatan

Metrik-metrik resolusi tinggi dengan pedetail sub-menit yang diambil oleh DB_PERF_INSIGHTS hanya berlaku untuk metrik DBLoad, atau untuk metrik sistem operasi jika Anda telah mengaktifkan Pemantauan yang Ditingkatkan dengan 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-ABCDEFGHIJKLMNOPQRSTUVWXY1’, ‘os.cpuUtilization.user.avg’)

DB_PERF_INSIGHTS(‘DOCDB, ‘db-ABCDEFGHIJKLMNOPQRSTUVWXY1’, [‘os.cpuUtilization.idle.avg’, ‘os.cpuUtilization.user.max’])

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:

  • Anda dapat menentukan sebuah nilai yang akan digunakan sebagai nilai pengisi.

  • Anda dapat menentukan sebuah metrik yang akan digunakan sebagai nilai pengisi.

  • Anda dapat menggunakan kata kunci REPEAT untuk mengisi nilai-nilai yang hilang dengan nilai aktual metrik terbaru sebelum nilai yang hilang tersebut.

  • Anda dapat menggunakan kata kunci LINEAR untuk mengisi nilai-nilai yang hilang dengan nilai-nilai yang menciptakan interpolasi linear antara nilai-nilai di awal dan akhir kesenjangan.

catatan

Saat 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 Membuat grafik metrik-metrik yang dihasilkan oleh aturan.

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[]

LOG dari deret waktu mengembalikan nilai logaritma dasar-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.

catatan

Kami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm jika Anda ingin fungsi mengembalikan skalar. Misalnya, MAX(m2) 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.

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.

catatan

Kami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm jika Anda ingin fungsi mengembalikan skalar. Misalnya, MIN(m2) 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.

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 mengembalikan deret waktu yang tidak jarang dari bilangan bulat antara 0 dan 59 yang mewakili menit UTC dari setiap timestamp dalam deret waktu asli.

  • HOUR mengembalikan deret waktu yang tidak jarang dari bilangan bulat antara 0 dan 23 yang mewakili menit UTC dari setiap timestamp dalam deret waktu asli.

  • DAY mengembalikan deret waktu yang tidak jarang dari bilangan bulat antara 1 dan 7 yang mewakili hari UTC dalam seminggu dari setiap timestamp dalam deret waktu asli. 1 mewakili Senin dan 7 mewakili Minggu.

  • DATE mengembalikan deret waktu yang tidak jarang dari bilangan bulat antara 1 dan 31 yang mewakili hari UTC dalam sebulan dari setiap timestamp dalam deret waktu asli.

  • BULAN mengembalikan deret waktu yang tidak jarang dari bilangan bulat antara 1 dan 12 yang mewakili bulan UTC dari setiap timestamp dalam deret waktu asli. 1 mewakili Januari dan 12 mewakili Desember.

  • TAHUN mengembalikan deret waktu yang tidak jarang dari bilangan bulat yang mewakili tahun UTC dari setiap timestamp dalam deret waktu asli.

  • EPOCH mengembalikan deret waktu yang tidak jarang dari bilangan bulat yang mewakili waktu UTC dalam detik sejak Epoch dari setiap timestamp dalam deret waktu asli. Epoch adalah 1 Januari 1970.

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.

penting

Menyetel 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.

catatan

Kami 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.

catatan

Kami 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 akses 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 deret waktu dimulai dengan nilai itu.

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.

catatan

Kami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm jika Anda ingin fungsi mengembalikan skalar. Misalnya, STDDEV(m2) 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.

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.

catatan

Kami menyarankan Anda untuk tidak menggunakan fungsi ini di CloudWatch alarm jika Anda ingin fungsi mengembalikan skalar. Misalnya, SUM(m1). 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(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 sintaksis yang benar. Untuk setiap sintaksis ini, output adalah satu deret waktu.

  • IF(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 detail lebih lanjut dan contoh untuk sintaksis ini.

IF(TS Comparison Operator S, scalar2 | metric2, scalar3 | metric3)

Nilai deret waktu output yang sesuai:

  • memiliki nilai scalar2 atau metric2, jika TS Comparison Operator S TRUE

  • memiliki nilai scalar3 atau metric3, jika TS Comparison Operator S FALSE

  • memiliki nilai 0 jika Operator Perbandingan TS TRUE dan titik data yang sesuai dalam metrik2 tidak ada.

  • memiliki nilai 0 jika Operator Perbandingan TS adalah 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 lebih lanjut, 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.

  • Detektor anomali matematika metrik yang menggunakan metrik resolusi tinggi sebagai input.

Untuk informasi selengkapnya tentang fitur ini, lihat Menggunakan deteksi CloudWatch anomali di CloudWatch Panduan Pengguna Amazon.