Anda sedang melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Gunakan API yang dijelaskan di bawah untuk mendapatkan metrik Monitoring API. Metrik adalah nilai data yang digabungkan oleh API Monitoring dari data mentah yang terdapat dalam log Monitoring API.
Bagian berikut menjelaskan cara mengelola metrik menggunakan API.
- Metrics API
- Mendapatkan informasi kesalahan
- Mengambil metrik untuk traffic dan latensi
- Mengambil metrik untuk pemberitahuan
Lihat Metrics API untuk mengetahui informasi selengkapnya tentang Metrics API.
Untuk informasi tentang opsi cURL yang digunakan dalam contoh ini, lihat Menggunakan cURL.
API Metrik
URL dasar yang Anda gunakan untuk membuat permintaan GET ke Metrics API adalah:
https://apimonitoring.enterprise.apigee.com/metrics/resource
Dengan resource sesuai dengan metrik tertentu. Tabel berikut mencantumkan resource metrik:
Resource | Deskripsi |
/traffic
|
Mendapatkan metrik traffic. Tentukan filter seperti nama proxy, interval, jangka waktu, target, kode status, dan banyak lainnya. |
/latency
|
Mendapatkan metrik latensi untuk permintaan
ke Edge dan ke target backend. Tentukan filter seperti nama proxy, interval, target, kode status, dan lainnya. |
/targets
|
Mendapatkan semua domain target untuk organisasi dan lingkungan tertentu. |
/alerthistory
|
Dapatkan metrik histori notifikasi untuk organisasi dan jangka waktu tertentu. |
/alertinstance/instanceid
|
Mendapatkan metrik histori notifikasi untuk ID instance notifikasi tertentu. |
/alertsummary
|
Dapatkan jumlah total pemberitahuan untuk organisasi dan jangka waktu. |
/faultcodenames
|
Mendapatkan semua nama kode kesalahan. |
/faultcodes
|
Dapatkan kode masalah. |
/faultcodecategories
|
Mendapatkan kategori kode kesalahan. |
/faultcodesubcategories
|
Mendapatkan subkategori kode kesalahan. |
/faultcodedetails
|
Dapatkan semua kode kesalahan beserta detailnya. |
Mendapatkan informasi kesalahan
Semua resource /fault*
menampilkan metadata tentang kemungkinan kesalahan di Edge.
Misalnya, untuk melihat daftar semua kategori kesalahan yang mungkin:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/faultcodecategories" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
Tetapkan $ACCESS_TOKEN
ke token akses OAuth 2.0, seperti yang dijelaskan dalam
Mendapatkan token akses OAuth 2.0.
Tanggapan akan muncul sebagai:
{
"faultCodeCategories":[
"","API Protocol","Developer/App","Extension Policy","Gateway",
"Mediation Policy","Mint","Security Policy","Sense","Traffic Mgmt Policy"
]
}
Anda kemudian dapat menentukan daftar kode kesalahan untuk kategori API Protocol
:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/faultcodes?faultCodeCategory=API Protocol" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
Untuk opsi tambahan, lihat Metrics API.
Merekam metrik untuk traffic dan latensi
Metrics API memiliki filter yang dapat diterapkan ke API untuk menentukan rentang waktu kustom, proxy, wilayah, lingkungan, dan filter lainnya ke metrik yang dihitung. Misalnya, untuk melihat metrik transaksi per detik (tps) setiap 10 menit untuk jam sebelumnya untuk semua lingkungan:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/traffic?from=-1h&to=now&select=tps&interval=10m&groupBy=env&org=myorg" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
Tetapkan $ACCESS_TOKEN
ke token akses OAuth 2.0, seperti yang dijelaskan dalam
Mendapatkan token akses OAuth 2.0.
Panggilan ini menampilkan hasil dalam bentuk:
{
"results":[
{
"series":[
{
"name":"proxy",
"tags":
{
"env":"prod",
"intervalSeconds":"60",
"org":"myorg",
"region":"myregion"
},
"columns":["time","tps"],
"values":[
["2018-08-15T13:10:00Z",5.03],
["2018-08-15T13:20:00Z",5.01],
["2018-08-15T13:30:00Z",5.81],
["2018-08-15T13:40:00Z",5.95],
…
]
},
…
}
}]
}
Perhatikan cara properti columns
menentukan format values
. Properti values
berisi tps yang dihitung setiap 10 menit, untuk interval 10 menit sebelumnya.
Parameter kueri interval
menentukan frekuensi metrik disimpan ke hasil dan periode pengambilan sampel untuk nilai dalam hasil. Pada contoh di atas, metrik dihitung selama 10 menit sebelumnya, dan ditulis ke hasilnya setiap 10 menit.
Gunakan parameter kueri from
dan to
untuk menentukan rentang waktu berformat ISO.
Durasi maksimum yang ditentukan oleh from
dan to
adalah 24 jam.
Format tanggal dapat berupa:
yyyy-mm-ddThh:mm:ssZ
yyyy-mm-ddThh:mm:ss+00:00
Contoh:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/traffic?from=2018-08-13T14%3A04%3A00Z&to=2018-08-13T14%3A10%3A00Z&select=tps&interval=1m&groupBy=env&org=myorg&proxy=PublicAPI" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
Atau gunakan parameter kueri from
dan to
untuk menentukan rentang waktu relatif, misalnya untuk satu jam terakhir:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/traffic?from=-1h&to=now&select=tps&interval=1m&groupBy=env&org=myorg&proxy=PublicAPI" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
Opsi lainnya adalah menggunakan parameter kueri proxy
untuk menampilkan transaksi per detik (tps) untuk satu proxy:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/traffic?from=-1h&to=now&select=tps&interval=1m&groupBy=env&org=myorg&proxy=PublicAPI" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
Untuk metrik latensi, tentukan banyak kriteria yang sama seperti metrik traffic. Namun, untuk resource /latency
:
- Anda harus menentukan parameter kueri
percentile
sebagai50
,90
,95
, atau99
. Misalnya, jika Anda menentukan90
, API akan menampilkan total nilai latensi respons dalam persentil ke-90. windowsize
ditetapkan pada satu menit.
Misalnya, untuk melihat metrik latensi total dalam persentil ke-90 selama jangka waktu 1 menit:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/latency?percentile=90&select=totalLatency&from=-1h&to=now&interval=5m&windowsize=1m&groupBy=org,env,region&org=myorg" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
Untuk opsi tambahan, lihat Metrics API.
Menangkap metrik untuk pemberitahuan
Metrics API menampilkan metrik untuk semua notifikasi, notifikasi tertentu, atau ringkasan notifikasi. Misalnya, untuk mendapatkan histori pemberitahuan untuk organisasi selama satu jam terakhir:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/alerthistory?org=myorg&from=-1h&to=now" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
Tetapkan $ACCESS_TOKEN
ke token akses OAuth 2.0, seperti yang dijelaskan dalam
Mendapatkan token akses OAuth 2.0.
Panggilan API ini menampilkan respons dalam bentuk:
[
{
"id":"983c4c7a-c301-4697-95cc-9a7c53e05fac",
"organization":"myorg",
"environment":"prod",
"name":"Public Api 5xx error rate",
"type":"Alert",
"source":"https://www.apigee.net/sonar",
"raw_payload":"
{
\"reportUUID\":\"\",
\"reportEnabled\":false,
\"organization\":\"myorg\",
\"name\":\"Public Api 5xx error rate\",
\"self\":\"/alerts/95cc9ef4-345f-11e8-9fd3-12774584e062\",
\"description\":\"\",
\"conditions\":[
{
\"comparator\":\"\u003e\",
\"metric\":\"rate\",
\"durationSeconds\":3600,
\"name\":\"\",
\"description\":\"\",
\"threshold\":0.01,
\"dimensions\":
{
\"proxy\":\"myAPI\",
\"org\":\"myorg\",
\"env\":\"prod\",
\"region\":\"myRegion\",
\"statusCode\":\"5xx\"
}
}],
\"uuid\":\"95cc9ef4-345f-11e8-9fd3-12774584e062\",
\"playbook\":\"This is a test alert.\"
}",
"time":"2018-08-14T12:45:28Z"
},
…
]
Anda kemudian dapat menggunakan id
di array yang ditampilkan untuk mendapatkan informasi tentang pemberitahuan tertentu:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/alertinstance/983c4c7a-c301-4697-95cc-9a7c53e05fac" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
Untuk opsi tambahan, lihat Metrics API.