আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন .info- তে যান।
এপিআই মনিটরিং মেট্রিক্স পেতে নিচে বর্ণিত এপিআইগুলো ব্যবহার করুন। মেট্রিক্স হলো এপিআই মনিটরিং লগে থাকা কাঁচা ডেটা থেকে এপিআই মনিটরিং দ্বারা সংগৃহীত ডেটার মান।
নিম্নলিখিত বিভাগগুলিতে এপিআই ব্যবহার করে মেট্রিক্স পরিচালনা করার পদ্ধতি বর্ণনা করা হয়েছে।
- মেট্রিক্স এপিআই
- ত্রুটির তথ্য পান
- ট্র্যাফিক এবং লেটেন্সির মেট্রিক্স সংগ্রহ করুন
- অ্যালার্টের জন্য মেট্রিক্স সংগ্রহ করুন
মেট্রিক্স এপিআই সম্পর্কে আরও জানতে মেট্রিক্স এপিআই দেখুন।
এই উদাহরণগুলিতে ব্যবহৃত cURL অপশনগুলো সম্পর্কে জানতে, Use cURL দেখুন।
মেট্রিক্স এপিআই
মেট্রিক্স এপিআই-তে GET রিকোয়েস্ট পাঠানোর জন্য আপনি যে বেস ইউআরএলটি ব্যবহার করেন তা হলো:
https://apimonitoring.enterprise.apigee.com/metrics/resource
যেখানে resource একটি নির্দিষ্ট মেট্রিককে নির্দেশ করে। নিচের সারণিতে মেট্রিক রিসোর্সগুলো তালিকাভুক্ত করা হলো:
| সম্পদ | বর্ণনা |
/traffic | ট্র্যাফিক মেট্রিক্স জানুন। প্রক্সি নাম, ব্যবধান, সময়সীমা, টার্গেট, স্ট্যাটাস কোড এবং আরও অনেক কিছুর মতো ফিল্টার নির্দিষ্ট করুন। |
/latency | অনুরোধগুলির লেটেন্সি মেট্রিক্স পান Edge এবং ব্যাকএন্ড টার্গেটগুলিতে। প্রক্সি নাম, ব্যবধান, টার্গেট, স্ট্যাটাস কোড এবং আরও অনেক কিছুর মতো ফিল্টার নির্দিষ্ট করুন। |
/targets | একটি নির্দিষ্ট সংস্থা এবং পরিবেশের জন্য সমস্ত লক্ষ্য ডোমেইন পান। |
/alerthistory | একটি নির্দিষ্ট সংস্থা এবং সময়সীমার জন্য অ্যালার্ট হিস্টোরির মেট্রিক্স পান। |
/alertinstance/ instanceid | নির্দিষ্ট অ্যালার্ট ইনস্ট্যান্স আইডির জন্য অ্যালার্ট হিস্ট্রি মেট্রিক্স পান। |
/alertsummary | একটি সংস্থা এবং নির্দিষ্ট সময়সীমার জন্য সতর্কবার্তার মোট সংখ্যা জানুন। |
/faultcodenames | সমস্ত ফল্টকোডের নামগুলো পান। |
/faultcodes | ফল্ট কোডগুলো জানুন। |
/faultcodecategories | ফল্ট কোডের বিভাগগুলো জানুন। |
/faultcodesubcategories | ফল্ট কোডের উপশ্রেণীগুলো পান। |
/faultcodedetails | বিস্তারিতসহ সমস্ত ফল্ট কোড জানুন। |
ত্রুটির তথ্য পান
/fault* রিসোর্সগুলো Edge-এর সম্ভাব্য ত্রুটিগুলো সম্পর্কে মেটাডেটা প্রদান করে। উদাহরণস্বরূপ, সমস্ত সম্ভাব্য ত্রুটির বিভাগের তালিকা দেখতে:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/faultcodecategories" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
“OAuth 2.0 অ্যাক্সেস টোকেন সংগ্রহ করুন” অংশে বর্ণিত পদ্ধতি অনুসারে, আপনার OAuth 2.0 অ্যাক্সেস টোকেনটি $ACCESS_TOKEN এ সেট করুন।
প্রতিক্রিয়াটি নিম্নরূপ:
{
"faultCodeCategories":[
"","API Protocol","Developer/App","Extension Policy","Gateway",
"Mediation Policy","Mint","Security Policy","Sense","Traffic Mgmt Policy"
]
}
এরপর আপনি API Protocol ক্যাটাগরির জন্য ফল্ট কোডগুলোর তালিকা নির্ধারণ করতে পারবেন:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/faultcodes?faultCodeCategory=API Protocol" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
অতিরিক্ত বিকল্পের জন্য, মেট্রিক্স এপিআই (Metrics API) দেখুন।
ট্র্যাফিক এবং লেটেন্সির মেট্রিক্স সংগ্রহ করুন
মেট্রিক্স এপিআই-তে ফিল্টার রয়েছে যা প্রয়োগ করে আপনি গণনাকৃত মেট্রিক্সের জন্য কাস্টম সময়সীমা, প্রক্সি, অঞ্চল, পরিবেশ এবং অন্যান্য ফিল্টার নির্দিষ্ট করতে পারেন। উদাহরণস্বরূপ, সমস্ত পরিবেশের জন্য বিগত এক ঘণ্টার প্রতি ১০ মিনিট অন্তর ট্রানজ্যাকশন পার সেকেন্ড (tps) মেট্রিক্স দেখতে হলে:
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"
“OAuth 2.0 অ্যাক্সেস টোকেন সংগ্রহ করুন” অংশে বর্ণিত পদ্ধতি অনুসারে, আপনার OAuth 2.0 অ্যাক্সেস টোকেনটি $ACCESS_TOKEN এ সেট করুন।
এই কলটি নিম্নলিখিত আকারে ফলাফল প্রদান করে:
{
"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],
…
]
},
…
}
}]
}
লক্ষ্য করুন, columns প্রপার্টি কীভাবে values এর ফরম্যাট নির্দিষ্ট করে। values প্রপার্টিতে পূর্ববর্তী ১০ মিনিটের ব্যবধানের জন্য, প্রতি ১০ মিনিট অন্তর গণনা করা `tps` থাকে।
interval কোয়েরি প্যারামিটারটি নির্ধারণ করে যে, কত ঘন ঘন মেট্রিকটি ফলাফলে সংরক্ষিত হবে এবং ফলাফলে মানের জন্য স্যাম্পলিং উইন্ডো কোনটি হবে। উপরের উদাহরণে, মেট্রিকটি বিগত ১০ মিনিটের উপর গণনা করা হয় এবং প্রতি ১০ মিনিট অন্তর ফলাফলে লেখা হয়।
ISO ফরম্যাটে একটি সময়সীমা নির্দিষ্ট করতে from এবং to কোয়েরি প্যারামিটার ব্যবহার করুন। from এবং to দ্বারা নির্দিষ্ট করা সর্বোচ্চ সময়কাল হলো ২৪ ঘণ্টা।
তারিখের ফরম্যাটটি হতে পারে:
-
yyyy-mm-dd T hh:mm:ss Z -
yyyy-mm-dd T hh:mm:ss +00:00
উদাহরণস্বরূপ:
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"
অথবা, একটি আপেক্ষিক সময়সীমা নির্দিষ্ট করতে from এবং to কোয়েরি প্যারামিটার ব্যবহার করুন, যেমন গত এক ঘণ্টার জন্য:
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"
আরেকটি বিকল্প হলো, একটিমাত্র প্রক্সির জন্য প্রতি সেকেন্ডে লেনদেনের (tps) সংখ্যা প্রদর্শন করতে 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"
লেটেন্সি মেট্রিক্সের জন্য, ট্র্যাফিক মেট্রিক্সের মতোই অনেক মানদণ্ড উল্লেখ করুন। তবে, /latency রিসোর্সের জন্য:
- আপনাকে অবশ্যই
percentileকোয়েরি প্যারামিটার হিসেবে50,90,95বা99উল্লেখ করতে হবে। উদাহরণস্বরূপ, আপনি যদি90উল্লেখ করেন, তাহলে API মোট রেসপন্স ল্যাটেন্সি মানটি ৯০তম পার্সেন্টাইলে ফেরত দেবে। -
windowsizeএক মিনিটে স্থির করা হয়েছে।
উদাহরণস্বরূপ, ১ মিনিটের উইন্ডোর জন্য মোট লেটেন্সির মেট্রিকগুলো ৯০তম পার্সেন্টাইলে দেখতে হলে:
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"
অতিরিক্ত বিকল্পের জন্য, মেট্রিক্স এপিআই (Metrics API) দেখুন।
অ্যালার্টের জন্য মেট্রিক্স সংগ্রহ করুন
মেট্রিক্স এপিআই সমস্ত অ্যালার্টের, একটি নির্দিষ্ট অ্যালার্টের, অথবা অ্যালার্টের সারাংশের মেট্রিক্স প্রদান করে। উদাহরণস্বরূপ, কোনো একটি সংস্থার গত এক ঘণ্টার অ্যালার্টের ইতিহাস পেতে:
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"
“OAuth 2.0 অ্যাক্সেস টোকেন সংগ্রহ করুন” অংশে বর্ণিত পদ্ধতি অনুসারে, আপনার OAuth 2.0 অ্যাক্সেস টোকেনটি $ACCESS_TOKEN এ সেট করুন।
এই এপিআই কলটি নিম্নলিখিত ফর্মে একটি প্রতিক্রিয়া প্রদান করে:
[
{
"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"
},
…
]
এরপর আপনি ফেরত আসা অ্যারেতে থাকা id ব্যবহার করে একটি নির্দিষ্ট অ্যালার্ট সম্পর্কে তথ্য পেতে পারেন:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/metrics/alertinstance/983c4c7a-c301-4697-95cc-9a7c53e05fac" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
অতিরিক্ত বিকল্পের জন্য, মেট্রিক্স এপিআই (Metrics API) দেখুন।