Menerbitkan metrik kustom - Amazon CloudWatch

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

Menerbitkan metrik kustom

Anda dapat mempublikasikan metrik Anda sendiri untuk CloudWatch menggunakan AWS CLI atau API. Anda dapat melihat grafik statistik metrik yang dipublikasikan dengan. AWS Management Console

CloudWatch menyimpan data tentang metrik sebagai serangkaian titik data. Setiap titik data memiliki stempel waktu terkait. Bahkan, Anda dapat menerbitkan himpunan titik data gabungan yang disebut himpunan statistik.

Metrik resolusi tinggi

Setiap metrik adalah salah satu dari berikut:

  • Resolusi standar, dengan data yang memiliki granularitas satu menit

  • Resolusi tinggi, dengan data pada granularitas satu detik

Metrik yang dihasilkan oleh AWS layanan adalah resolusi standar secara default. Ketika menerbitkan sebuah metrik kustom, Anda dapat menetapkannya sebagai resolusi standar atau resolusi tinggi. Saat Anda menerbitkan metrik resolusi tinggi, CloudWatch simpan dengan resolusi 1 detik, dan Anda dapat membaca dan mengambilnya dengan jangka waktu 1 detik, 5 detik, 10 detik, 30 detik, atau kelipatan 60 detik.

Metrik resolusi tinggi dapat memberi wawasan yang lebih cepat tentang aktivitas submenit aplikasi Anda. Ingatlah bahwa setiap panggilan PutMetricData untuk sebuah metrik kustom yang dikenakan biaya, sehingga memanggil PutMetricData lebih sering pada sebuah metrik resolusi tinggi akan dapat mengakibatkan biaya yang lebih tinggi. Untuk informasi selengkapnya tentang CloudWatch harga, lihat CloudWatch Harga Amazon.

Jika Anda mengatur sebuah alarm pada metrik resolusi tinggi, maka Anda dapat menentukan alarm resolusi tinggi dengan periode 10 detik atau 30 detik, atau Anda dapat mengatur sebuah alarm biasa dengan periode lebih dari 60 detik. Terdapat biaya yang lebih tinggi untuk alarm resolusi tinggi dengan periode 10 atau 30 detik.

Gunakan dimensi

Dalam metrik kustom, parameter --dimensions merupakan hal umum. Dimensi lebih lanjut menjelaskan apa itu metrik dan data apa yang disimpannya. Anda dapat memiliki hingga 30 dimensi yang ditetapkan pada satu metrik, dan setiap dimensi ditentukan oleh nama dan pasangan nilai.

Cara menentukan dimensi yang berbeda ketika Anda menggunakan perintah yang berbeda. Dengan put-metric-data, Anda menentukan setiap dimensi sebagai MyName= MyValue, dan dengan get-metric-statisticsatau put-metric-alarmAnda menggunakan format Name= MyName, Value= MyValue. Sebagai contoh, perintah berikut menerbitkan metrik Buffers dengan dua dimensi yang disebut InstanceId dan InstanceType.

aws cloudwatch put-metric-data --metric-name Buffers --namespace MyNameSpace --unit Bytes --value 231434333 --dimensions InstanceId=1-23456789,InstanceType=m1.small

Perintah ini mengambil statistik untuk metrik yang sama. Pisahkan bagian Nama dan Nilai dari dimensi tunggal dengan tanda koma, tetapi jika Anda memiliki beberapa dimensi, gunakan ruang antara satu dimensi dan dimensi berikutnya.

aws cloudwatch get-metric-statistics --metric-name Buffers --namespace MyNameSpace --dimensions Name=InstanceId,Value=1-23456789 Name=InstanceType,Value=m1.small --start-time 2016-10-15T04:00:00Z --end-time 2016-10-19T07:00:00Z --statistics Average --period 60

Jika satu metrik menyertakan beberapa dimensi, Anda harus menentukan nilai untuk setiap dimensi yang ditentukan saat Anda menggunakannya get-metric-statistics. Misalnya, metrik Amazon S3 BucketSizeBytes menyertakan dimensi BucketName danStorageType, jadi Anda harus menentukan kedua dimensi dengan. get-metric-statistics

aws cloudwatch get-metric-statistics --metric-name BucketSizeBytes --start-time 2017-01-23T14:23:00Z --end-time 2017-01-26T19:30:00Z --period 3600 --namespace AWS/S3 --statistics Maximum --dimensions Name=BucketName,Value=MyBucketName Name=StorageType,Value=StandardStorage --output table

Untuk melihat dimensi apa yang ditentukan untuk metrik, gunakan perintah list-metrics.

Menerbitkan titik data tunggal

Untuk mempublikasikan satu titik data untuk metrik baru atau yang sudah ada, gunakan put-metric-dataperintah dengan satu nilai dan cap waktu. Misalnya, setiap tindakan berikut menerbitkan satu titik data.

aws cloudwatch put-metric-data --metric-name PageViewCount --namespace MyService --value 2 --timestamp 2016-10-20T12:00:00.000Z aws cloudwatch put-metric-data --metric-name PageViewCount --namespace MyService --value 4 --timestamp 2016-10-20T12:00:01.000Z aws cloudwatch put-metric-data --metric-name PageViewCount --namespace MyService --value 5 --timestamp 2016-10-20T12:00:02.000Z

Jika Anda memanggil perintah ini dengan nama metrik baru, CloudWatch buat metrik untuk Anda. Jika tidak, CloudWatch kaitkan data Anda dengan metrik yang ada yang Anda tentukan.

catatan

Saat Anda membuat metrik, diperlukan waktu hingga 2 menit sebelum Anda dapat mengambil statistik untuk metrik baru menggunakan get-metric-statisticsperintah. Namun demikian, ini dapat memakan waktu hingga 15 menit sebelum metrik baru tersebut muncul dalam daftar metrik yang diambil menggunakan perintah list-metrics.

Meskipun Anda dapat mempublikasikan titik data dengan stempel waktu sebagai granular seperseribu detik, CloudWatch agregat data ke granularitas minimum 1 detik. CloudWatch mencatat rata-rata (jumlah semua item dibagi dengan jumlah item) dari nilai yang diterima untuk setiap periode, serta jumlah sampel, nilai maksimum, dan nilai minimum untuk periode waktu yang sama. Sebagai contoh, metrik PageViewCount dari contoh sebelumnya memuat tiga titik data dengan stempel waktu yang hanya berjarak beberapa detik. Jika periode Anda disetel ke 1 menit, CloudWatch agregat tiga titik data karena semuanya memiliki stempel waktu dalam periode 1 menit.

Anda dapat menggunakan perintah get-metric-statistics untuk mengambil statistik berdasarkan titik data yang dipublikasikan.

aws cloudwatch get-metric-statistics --namespace MyService --metric-name PageViewCount \ --statistics "Sum" "Maximum" "Minimum" "Average" "SampleCount" \ --start-time 2016-10-20T12:00:00.000Z --end-time 2016-10-20T12:05:00.000Z --period 60

Berikut ini adalah output contoh.

{ "Datapoints": [ { "SampleCount": 3.0, "Timestamp": "2016-10-20T12:00:00Z", "Average": 3.6666666666666665, "Maximum": 5.0, "Minimum": 2.0, "Sum": 11.0, "Unit": "None" } ], "Label": "PageViewCount" }

Menerbitkan himpunan statistik

Anda dapat mengumpulkan data Anda sebelum mempublikasikannya CloudWatch. Bila Anda memiliki beberapa titik data per menit, menggabungkan data meminimalkan jumlah panggilan menjadi put-metric-data. Misalnya, alih-alih memanggil put-metric-data beberapa kali untuk tiga titik data yang berada dalam 3 detik satu sama lain, Anda dapat menggabungkan data ke dalam satu himpunan statistik yang Anda publikasikan dengan satu panggilan, menggunakan parameter --statistic-values.

aws cloudwatch put-metric-data --metric-name PageViewCount --namespace MyService --statistic-values Sum=11,Minimum=2,Maximum=5,SampleCount=3 --timestamp 2016-10-14T12:00:00.000Z

CloudWatch membutuhkan titik data mentah untuk menghitung persentil. Jika menerbitkan data menggunakan himpunan statistik, Anda tidak dapat mengambil statistik persentil untuk data ini kecuali jika salah satu ketentuan berikut benar:

  • SampleCount dari himpunan statistik adalah 1

  • Minimum dan Maximum dari himpunan statistik adalah sama

Menerbitkan nilai Nol

Jika data Anda lebih bersifat jarang dan memiliki periode yang tidak memiliki data terkait, Anda dapat memilih untuk menerbitkan nilai nol (0) untuk periode tersebut atau tidak ada nilai sama sekali. Jika menggunakan panggilan berkala ke PutMetricData guna memantau kesehatan aplikasi Anda, Anda mungkin ingin menerbitkan nol, alih-alih tanpa nilai. Misalnya, Anda dapat mengatur CloudWatch alarm untuk memberi tahu Anda jika aplikasi Anda gagal mempublikasikan metrik setiap lima menit. Anda ingin aplikasi tersebut menerbitkan nol pada periode tanpa data terkait.

Anda juga dapat menerbitkan nol jika ingin melacak total titik data atau jika menginginkan statistik seperti minimum dan rata-rata untuk menyertakan titik data dengan nilai 0.

Berhenti menerbitkan metrik

Untuk menghentikan penerbitan metrik kustom ke CloudWatch, ubah kode aplikasi atau layanan Anda untuk berhenti menggunakan PutMetricData. CloudWatch tidak menarik metrik dari aplikasi, itu hanya menerima apa yang didorong ke sana, jadi untuk berhenti menerbitkan metrik Anda, Anda harus menghentikannya di sumbernya.