উদাহরণ সাইট ব্যান্ডউইথ অ্যাকাউন্ট মেট্রিক্স API দ্বারা

এই আর্টিকেলটি একটি নমুনা অ্যাকাউন্ট মেট্রিক্স API কুয়েরি ব্যাখ্যা করে যা একটি সাইটের জন্য সর্বাধিক আপস্ট্রিম এবং ডাউনস্ট্রিম থ্রুপুট পর্যবেক্ষণ করতে ব্যবহৃত হয়।

কুয়েরি তৈরি করা

আমরা সুপারিশ করি যে আপনি bytesUpstreamMax এবং bytesDownstreamMax ব্যবহার করবেন, যা পিক মেট্রিক্স। ক্যাটো লাইসেন্সসমূহ এই মানের উপর ভিত্তি করে, গড় থ্রুপুটের উপর নয়।

এটি একটি কুয়েরি যা ৬ ফেব্রুয়ারি ২০২৪ তারিখে, ID=12345 সহ সাইটের জন্য ১৫:০০:০০ থেকে ১৫:১০:০০ সময়ের মধ্যে ১০ বালির সময়সীমার একটি টাইম সিরিজ পুনরুদ্ধার করে। ১০ মিনিটের সময়সীমার জন্য ১০ বালি মানে প্রতি বালি কার্যত এক মিনিট।

{
 accountMetrics(
 accountID: 7890
 timeFrame: "utc.2024-02-06/{15:00:00--15:10:00}"
 groupDevices: true
 groupInterfaces: true
 ) {
 from
 to
 sites (siteIDs:[12345]) {
 interfaces {
 name
 timeseries (labels:[bytesUpstreamMax] buckets:10) {
 label
 units
 data
 }
 }
 }
 }
}

GraphQL API প্লেগ্রাউন্ডে এই কুয়েরিটি এইভাবে দেখাচ্ছে:

০১_অ্যাকাউন্টমেট্রিক্স.png

সম্পূর্ণ প্রতিক্রিয়া হল:

{
 "data": {
 "accountMetrics": {
 "from": "2024-02-06T15:00:00Z",
 "to": "2024-02-06T15:10:00Z",
 "sites": [
 {
 "interfaces": [
 {
 "name": "all",
 "timeseries": [
 {
 "label": "bytesUpstreamMax",
 "units": "bytes",
 "data": [
 [
 1707231600000,
 6008
 ],
 [
 1707231660000,
 12802
 ],
 [
 1707231720000,
 6557
 ],
 [
 1707231780000,
 3467
 ],
 [
 1707231840000,
 7168
 ],
 [
 1707231900000,
 3660
 ],
 [
 1707231960000,
 6791
 ],
 [
 1707232020000,
 5839
 ],
 [
 1707232080000,
 4183
 ],
 [
 1707232140000,
 4684
 ]
 ]
 }
 ]
 }
 ]
 }
 ]
 }
 }
}

টাইম সিরিজ ফলাফলের ব্যাখ্যা

টাইমস্ট্যাম্প

টাইম সিরিজ/ডেটা অ্যারের প্রতিটি উপাদান একটি তালিকা যেখানে প্রথম উপাদানটি সেই বালির শুরুতে টাইমস্ট্যাম্প এবং দ্বিতীয় উপাদানটি সেই বালির মেট্রিক। টাইমস্ট্যাম্পগুলি UTC তে, ইউনিক্স ইপক সময় যা ন্যানোসেকেন্ডে। একটি পাইথন এক-লাইন কমান্ড প্রথম বালির টাইমস্ট্যাম্পকে মানব-পাঠযোগ্য স্ট্রিংয়ে রূপান্তর করে:

python3 -c "import datetime;print(datetime.datetime.fromtimestamp(1707231600000/1000))"

ম্যাকে এই কমান্ডটি চালানো এইরকম দেখায়:

sh-3.2$ python3 -c "import datetime;print(datetime.datetime.fromtimestamp (1707231600000/1000))"
2024-02-06 15:00:00
sh-3.2$

আপনি নিম্নলিখিত ভাবে একটি ব্যাশ কমান্ডও চালাতে পারেন:

date -r $((1707231600000/1000))

এটি ব্যাশ কমান্ডের ফলাফল:

Cato-admin-M:tools catoadmin$ date -r $((1707231600000/1000))
Tue 6 Feb 2024 15:00:00 GMT

উপরের আউটপুট থেকে সমস্ত টাইমস্ট্যাম্প রূপান্তর করার জন্য এই কৌশলগুলি ব্যবহার করে, আমরা দেখছি যে তারা আমাদের সময়সীমার প্রতিটি মিনিটের জন্য বালির শুরু মেলে:

1707231600000 -> 2024-02-06 15:00:00
1707231660000 -> 2024-02-06 15:01:00
1707231720000 -> 2024-02-06 15:02:00
1707231780000 -> 2024-02-06 15:03:00
1707231840000 -> 2024-02-06 15:04:00
1707231900000 -> 2024-02-06 15:05:00
1707231960000 -> 2024-02-06 15:06:00
1707232020000 -> 2024-02-06 15:07:00
1707232080000 -> 2024-02-06 15:08:00
1707232140000 -> 2024-02-06 15:09:00

পিক আপস্ট্রিম থ্রুপুট

প্রতিটি টাইম সিরিজ উপাদানের দ্বিতীয় আইটেমটি হল মেট্রিক যা এই ক্ষেত্রে সেই বালিতে পিক আপস্ট্রিম থ্রুপুট। একটি একক কুয়েরিতে একাধিক মেট্রিক অনুরোধ করা যেতে পারে - এটি সাধারণ bytesUpstreamMax এবং bytesDownstreamMax উভয় অনুরোধ করা। মেট্রিক সর্বদা একটি রেট হিসাবে প্রকাশ করা হয়, perSecond ইনপুট প্যারামিটার নির্বিশেষে। ইউনিট ক্ষেত্রটি নির্দেশ করে যে এগুলি বাইট, তাই আমাদের আরও স্বাভাবিক বিট প্রতি সেকেন্ডে রূপান্তর করার জন্য ৮ দ্বারা গুণ করতে হবে।

আমাদের উপরে প্রতিক্রিয়ার প্রথম উপাদানটি দেখা যাচ্ছে:

[
1707231600000,
6008
],

আমরা এটিকে এইভাবে ব্যাখ্যা করতে পারি:

  • ২০২৪-০২-০৬ ১৫:০০:০০ UTC হল এই বালির শুরু

  • আমরা আমাদের প্যারামিটার থেকে জানি যে এটি একটি এক মিনিটের বালি (আপনি যদি নিশ্চিত না হন তবে আপনি API-কে বালির গ্রানুলারিটির জন্য জিজ্ঞাসা করতে পারেন)

  • এই বালির সময়, সর্বোচ্চ থ্রুপুট ছিল ৬০০৮ বাইট প্রতি সেকেন্ড। ৮ দ্বারা গুণ করলে, আমরা একটি শীর্ষ মান পাই ৮*৬০০৮ = ৪৮,০৬৪ বিট প্রতি সেকেন্ড = ৪৮kbps।

আমাদের ফেরত দেওয়া টাইম সিরিজের সমস্ত আইটেমে এই একই নীতি প্রয়োগ করে, আমরা এই মানগুলি পাই:

1707231600000 -> 2024-02-06 15:00:00 48kbps
1707231660000 -> 2024-02-06 15:01:00 102kbps
1707231720000 -> 2024-02-06 15:02:00 52kbps
1707231780000 -> 2024-02-06 15:03:00 27kbps
1707231840000 -> 2024-02-06 15:04:00 57kbps
1707231900000 -> 2024-02-06 15:05:00 29kbps
1707231960000 -> 2024-02-06 15:06:00 54kbps
1707232020000 -> 2024-02-06 15:07:00 46kbps
1707232080000 -> 2024-02-06 15:08:00 33kbps
1707232140000 -> 2024-02-06 15:09:00 37kbps

যদি আমরা Excel এ এই মানগুলি গ্রাফ করি, তাহলে লাইন চার্টটি এইরকম দেখায়:

০২_এক্সেল.png

যথাযথ সময়সীমা এবং সাইটের জন্য, "ম্যাক্স থ্রুপুট – আপস্ট্রিম" গ্রাফটি এইরকম দেখায়:

০৩_এক্সেল.png

প্রথম দর্শনে এই গ্রাফগুলি ভিন্ন মনে হতে পারে, কিন্তু এটি মূলত এর CMA গ্রাফটি একটি উচ্চতর বালি সংখ্যার সাথে একটি কুয়েরি থেকে এসেছে – সহজ প্রদর্শনের জন্য, আমরা আমাদের প্লেগ্রাউন্ড কুয়েরির একটি ছোট বালি গণনা (১০) ব্যবহার করছি। যদি আমরা আমাদের কুয়েরি ডেটা থেকে Excel গ্রাফটিকে CMA গ্রাফের উপর রাখি, তাহলে একটি দৃঢ় সম্পর্ক দেখা যাবে:

০৪_এক্সেল.png

এই নিবন্ধটি কি সহায়ক ছিল?

0 জনের মধ্যে 0 জন এটিকে সহায়ক বলে মনে করেছেন

0 মন্তব্য