Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi
Apigee X. info
Gunakan API yang dijelaskan di bawah untuk mendapatkan metrik Pemantauan API. Metrik adalah nilai data yang digabungkan oleh Monitoring API dari data mentah yang terdapat dalam log Monitoring API.
Bagian berikut menjelaskan cara mengelola metrik menggunakan API.
- Metrics API
- Mendapatkan informasi error
- 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.
Metrics API
URL dasar yang Anda gunakan untuk membuat permintaan GET ke API metrik 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, periode waktu, target, kode status, dan banyak lagi. |
/latency
|
Mendapatkan metrik latensi untuk permintaan
ke Edge dan ke target backend. Tentukan filter seperti nama proxy, interval, target, kode status, dan banyak lagi. |
/targets
|
Mendapatkan semua domain target untuk organisasi dan lingkungan tertentu. |
/alerthistory
|
Mendapatkan metrik histori pemberitahuan untuk organisasi dan periode waktu tertentu. |
/alertinstance/instanceid
|
Dapatkan metrik histori pemberitahuan untuk ID instance pemberitahuan tertentu. |
/alertsummary
|
Mendapatkan jumlah total pemberitahuan untuk organisasi dan periode waktu. |
/faultcodenames
|
Mendapatkan semua nama faultcode. |
/faultcodes
|
Mendapatkan kode error. |
/faultcodecategories
|
Mendapatkan kategori kode error. |
/faultcodesubcategories
|
Mendapatkan subkategori kode kerusakan. |
/faultcodedetails
|
Mendapatkan semua kode error dengan detail. |
Mendapatkan informasi kesalahan
Semua resource /fault*
menampilkan metadata tentang kemungkinan error di Edge.
Misalnya, untuk melihat daftar semua kemungkinan kategori error:
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 Anda, seperti yang dijelaskan dalam
Mendapatkan token akses OAuth 2.0.
Responsnya akan muncul sebagai:
{
"faultCodeCategories":[
"","API Protocol","Developer/App","Extension Policy","Gateway",
"Mediation Policy","Mint","Security Policy","Sense","Traffic Mgmt Policy"
]
}
Kemudian, Anda dapat menentukan daftar kode error 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 Anda terapkan 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 selama satu 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 Anda, 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 bagaimana properti columns
menentukan format values
. Properti values
berisi tps yang dihitung setiap 10 menit, untuk interval 10 menit sebelumnya.
Parameter kueri interval
menentukan frekuensi penyimpanan metrik ke
hasil dan periode sampling untuk nilai dalam hasil. Pada contoh di atas, metrik dihitung selama 10 menit sebelumnya, dan ditulis ke hasil 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 untuk 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 ke satu menit.
Misalnya, untuk melihat metrik total latensi pada persentil ke-90 untuk periode 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.
Mengambil metrik untuk pemberitahuan
Metrics API menampilkan metrik untuk semua pemberitahuan, untuk pemberitahuan tertentu, atau ringkasan pemberitahuan. 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 Anda, 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"
},
…
]
Selanjutnya, Anda dapat menggunakan id
dalam 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.