অ্যানালিটিক্স মেট্রিক, ডাইমেনশন ও ফিল্টার রেফারেন্স

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন।
তথ্য

এই বিষয় হল অ্যানালিটিক্স মেট্রিক, ডাইমেনশন ও ফিল্টারের রেফারেন্স। এগুলি ব্যবহার করা সম্পর্কে আরও জানতে API Analytics ওভারভিউ দেখুন।

এই বিষয়ে মেট্রিক ও ডাইমেনশনের নামগুলি UI-তে যেভাবে দেখানো হয় এবং API কলে যেভাবে ব্যবহার করতে হয় তা দেখানো হয়েছে।

মেট্রিক্স

কাস্টম রিপোর্ট ও ম্যানেজমেন্ট API কলে আপনি নিম্নলিখিত API মেট্রিক রিট্রিভ করতে পারবেন।

কাস্টম রিপোর্টের নাম ম্যানেজমেন্ট API-তে ব্যবহার করার জন্য নাম ফাংশন বিবরণ
প্রতি সেকেন্ডে গড় ট্রানজ্যাকশন tps কোনওটিই নয়

প্রতি সেকেন্ডে ট্রানজ্যাকশনের গড় সংখ্যা, অর্থাৎ API প্রক্সি অনুরোধ। মনে রাখবেন, নির্দিষ্ট সময়সীমার মধ্যে তুলনামূলকভাবে কম সংখ্যক ট্রানজ্যাকশন হলে, প্রতি সেকেন্ডে ট্রানজ্যাকশনের গড় সংখ্যা UI কাস্টম রিপোর্টে শূন্য হিসেবে দেখানো হতে পারে, যদি সংখ্যাটি দুই দশমিক স্থানের চেয়ে ছোট হয়।

API সিনট্যাক্স: tps

ক্যাশে হিট cache_hit যোগফল

টার্গেট পরিষেবা থেকে পাওয়া উত্তরের পরিবর্তে উত্তর ক্যাশে ব্যবহার করে সফল API অনুরোধের সংখ্যা।

API সিনট্যাক্স: sum(cache_hit)

L1 ক্যাশে এলিমেন্টের সংখ্যা ax_cache_l1_count গড়, সর্বনিম্ন, সর্বাধিক

একটি নির্দিষ্ট সময়সীমার মধ্যে প্রতিটি ট্রানজ্যাকশনের জন্য L1 (ইন-মেমরি) ক্যাশেতে থাকা এলিমেন্টের সংখ্যা ফেরত দেয়। যেমন, আপনি যদি এক দিনের জন্য max বেছে নেন এবং সেই দিনের মধ্যে কোনও নির্দিষ্ট ট্রানজ্যাকশনের জন্য ক্যাশে থাকা এলিমেন্টের সর্বাধিক সংখ্যা ১২ হয়, তাহলে সংখ্যাটি ১২ হবে। avg-এর জন্য, আপনি কোয়েরি করছেন এমন সময়সীমার মধ্যে তিনটি ট্রানজ্যাকশন থাকলে এবং সেগুলির ক্যাশে কাউন্ট ৫, ৬ ও ৭ হলে, গড় হল ৬। L1 ক্যাশে হল ইন-মেমরি ক্যাশে, যা L2 ডেটাবেস ক্যাশের বিপরীত। এটি ক্যাশে ইন্টার্নাল নিবন্ধে বর্ণনা করা হয়েছে।

API সিনট্যাক্স: avg(ax_cache_l1_count)

নীতি সংক্রান্ত সমস্যা policy_error যোগফল

নির্দিষ্ট সময়সীমার মধ্যে নীতি সংক্রান্ত সমস্যার মোট সংখ্যা।

নীতি সংক্রান্ত সমস্যা সাধারণত ডিজাইন সংক্রান্ত কারণে হয়। যেমন, যাচাই API কী নীতি অনুরোধে ভুল API কী পাস করা হলে একটি সমস্যা দেখায় এবং স্পাইক অ্যারেস্ট নীতি API কলের সংখ্যা নীতিতে নির্ধারিত সীমা অতিক্রম করলে একটি সমস্যা দেখায়। তাই আপনার API-তে সম্ভাব্য সমস্যাযুক্ত জায়গা খুঁজে পাওয়ার জন্য এই মেট্রিকটি সহায়ক। যেমন, developer_app ডাইমেনশন অনুযায়ী গ্রুপ করা policy_error মেট্রিক আপনাকে এটি আবিষ্কার করতে সাহায্য করতে পারে যে কোনও নির্দিষ্ট অ্যাপের জন্য API কী বা OAuth টোকেনের মেয়াদ শেষ হয়ে গেছে; অথবা আপনি এটিও খুঁজে পেতে পারেন যে নির্দিষ্ট কোনও API প্রক্সি অনেক বেশি Spike Arrest সংক্রান্ত সমস্যা দেখাচ্ছে, এর ফলে আপনি এটি আবিষ্কার করতে পারেন যে প্রক্সির স্পাইক অ্যারেস্ট সীমা ছুটির দিনে ট্রাফিকের বৃদ্ধিকে বিবেচনা করে না।

নীতি সংক্রান্ত সমস্যার কারণে API প্রক্সি কাজ না করলে তবেই অ্যানালিটিক্সে সমস্যা লগ করা হয়। যেমন, কোনও নীতির continueOnError অ্যাট্রিবিউট true হিসেবে সেট করা থাকলে, নীতি কাজ না করলেও এপিআই প্রক্সি অনুরোধ প্রসেস করা চালিয়ে যায়। সেই ক্ষেত্রে, নীতি সংক্রান্ত কোনও সমস্যা Analytics-এ লগ করা হয় না।

নীতি অনুযায়ী নীতি সংক্রান্ত সমস্যা গ্রুপ করার জন্য সমস্যায় থাকা নীতির নাম (ax_execution_fault_policy_name) ডাইমেনশন কাজে লাগে।

টার্গেট কাজ না করলে (যেমন, 404 বা 503) তা নীতি লঙ্ঘন হিসেবে গণ্য করা হয় না। এগুলি API প্রক্সি ব্যর্থতা (is_error) হিসেবে গণ্য করা হয়।

API সিনট্যাক্স: sum(policy_error)

প্রক্সি সংক্রান্ত সমস্যা is_error যোগফল

নির্দিষ্ট সময়সীমার মধ্যে API প্রক্সি যতবার কাজ করেনি তার মোট সংখ্যা। প্রক্সি নীতি ব্যর্থ হলে বা রানটাইম ব্যর্থতা হলে, যেমন টার্গেট পরিষেবা থেকে 404 বা 503 হলে ব্যর্থতা হতে পারে।

প্রক্সি (apiproxy) ডাইমেনশন, প্রক্সি অনুযায়ী API প্রক্সি ব্যর্থতা গ্রুপ করার জন্য সহায়ক।

API সিনট্যাক্স: sum(is_error)

অনুরোধ প্রসেস করার লেটেন্সি request_processing_latency গড়, সর্বনিম্ন, সর্বাধিক

Edge-এর ইনকামিং অনুরোধ প্রসেস করতে যে সময় লাগে (গড়, ন্যূনতম বা সর্বাধিক), তা মিলি সেকেন্ডে, দেখানো হয়। অনুরোধটি Edge-এ পৌঁছানোর সাথে সাথে সময় শুরু হয় এবং Edge অনুরোধটি টার্গেট পরিষেবায় ফরওয়ার্ড করার সাথে সাথে সময় শেষ হয়ে যায়।

API প্রক্সি, ডেভেলপার অ্যাপ, অঞ্চল ইত্যাদি বিভিন্ন ডাইমেনশন ব্যবহার করে, আপনি অনুরোধ প্রসেস করার লেটেন্সি পরীক্ষা করতে পারবেন।

API সিনট্যাক্স: max(request_processing_latency)

অনুরোধের সাইজ request_size যোগফল, গড়, সর্বনিম্ন, সর্বাধিক

Edge-এর পাওয়া অনুরোধ পেলোডের সাইজ, বাইট-এ।

API সিনট্যাক্স: avg(request_size)

উত্তর ক্যাশে এক্সিকিউট করা হয়েছে ax_cache_executed যোগফল

নির্দিষ্ট সময়সীমার মধ্যে যতবার রেসপন্স ক্যাশে নীতি প্রয়োগ করা হয়েছে তার মোট সংখ্যা ।

যেহেতু API প্রক্সিতে দু'টি জায়গায় রেসপন্স ক্যাশে নীতি অ্যাটাচ করা থাকে (একটি অনুরোধে এবং একটি উত্তরে), তাই এটি সাধারণত API কলে দু'বার এক্সিকিউট হয়। ক্যাশে 'get' ও ক্যাশে 'put' প্রত্যেকটি একটি করে এক্সিকিউশন হিসেবে গণ্য হয়।

তবে, যদি নীতির <SkipCacheLookup> এলিমেন্টটি সত্য (অনুরোধে) হিসেবে মূল্যায়ন করা হয়, তাহলে রেসপন্স ক্যাশে এক্সিকিউশন ০ হয় এবং যদি নীতির <SkipCachePopulation> এলিমেন্টটি সত্য (উত্তরে) হিসেবে মূল্যায়ন করা হয়, তাহলে রেসপন্স ক্যাশে এক্সিকিউশন ০ হয়।

ট্রেস টুল-এ, আপনি কোনও এক্সিকিউট করা API কলে 'প্রতিক্রিয়া ক্যাশে' আইকনে ক্লিক করতে এবং responsecache.executed ফ্লো ভেরিয়েবল দেখতে পারেন। এর মাধ্যমে ক্যাশে এক্সিকিউশন (১ ভ্যালু) হয়েছে কিনা তা জানতে পারবেন।

API সিনট্যাক্স: sum(ax_cache_executed)

উত্তর প্রসেস করার লেটেন্সি response_processing_latency গড়, সর্বনিম্ন, সর্বাধিক

API উত্তর প্রসেস করতে Edge-এর যে সময় (গড়, ন্যূনতম বা সর্বাধিক) লাগে, তা মিলি সেকেন্ডে, দেখানো হয়। API প্রক্সি টার্গেট সার্ভিস থেকে উত্তর পাওয়ার সাথে সাথেই সময় গণনা শুরু হয় এবং Apigee আসল কলারকে উত্তর ফরওয়ার্ড করার সাথে সাথেই সময় গণনা শেষ হয়।

বিভিন্ন ডাইমেনশন ব্যবহার করে, আপনি API প্রক্সি, অঞ্চল এবং আরও অনেক কিছু দ্বারা প্রতিক্রিয়া প্রসেস করার লেটেন্সি পরীক্ষা করতে পারবেন।

API সিনট্যাক্স: min(response_processing_latency)

উত্তর দেওয়ার সাইজ response_size যোগফল, গড়, সর্বনিম্ন, সর্বাধিক

ক্লায়েন্টকে ফেরত পাঠানো উত্তরের পেলোডের সাইজ, বাইট-এ।

API সিনট্যাক্স: max(response_size)

টার্গেট সংক্রান্ত সমস্যা target_error যোগফল

টার্গেট পরিষেবা থেকে পাওয়া 5xx উত্তরের মোট সংখ্যা। এগুলি হল টার্গেট পরিষেবা সংক্রান্ত সমস্যা যা Apigee-এর কারণে হয়নি।

API সিনট্যাক্স: sum(target_error)

উত্তর দেওয়ার টার্গেট সময় target_response_time যোগফল, গড়, সর্বনিম্ন, সর্বাধিক

কলের উত্তর দেওয়ার জন্য টার্গেট সার্ভারের নেওয়া সময়ের পরিমাণ (যোগফল, গড়, ন্যূনতম বা সর্বাধিক), মিলি সেকেন্ডে। এই মেট্রিক থেকে টার্গেট সার্ভার কেমন পারফর্ম করছে তা জানতে পারবেন। Edge যখন টার্গেট পরিষেবায় অনুরোধ ফরোয়ার্ড করে তখন সময় শুরু হয় এবং Edge যখন উত্তর পায় তখন সময় শেষ হয়।

মনে রাখবেন, কোনও API কল যদি ক্যাশে থেকে উত্তর রিটার্ন করে (যেমন, Response Cache নীতি ব্যবহার করে), তাহলে কলটি কখনই টার্গেট পরিষেবায় পৌঁছাবে না এবং কোনও টার্গেট রেসপন্স টাইম মেট্রিক লগ করা হবে না।

API সিনট্যাক্স: avg(target_response_time)

উত্তর দেওয়ার মোট সময় total_response_time যোগফল, গড়, সর্বনিম্ন, সর্বাধিক

Edge কোনও ক্লায়েন্টের থেকে অনুরোধ পাওয়ার পর থেকে Edge ক্লায়েন্টকে উত্তর পাঠানোর মধ্যেকার সময় (যোগফল, গড়, সর্বনিম্ন বা সর্বোচ্চ), যা মিলি সেকেন্ডে দেখানো হয়। এই সময়ের মধ্যে নেটওয়ার্ক ওভারহেড (যেমন, লোড ব্যালেন্সার ও রাউটারকে কাজ করার জন্য যে সময় লাগে), অনুরোধ প্রসেস করার লেটেন্সি, উত্তর প্রসেস করার লেটেন্সি এবং টার্গেট উত্তর দেওয়ার সময় (যদি উত্তরটি ক্যাশে থেকে না দিয়ে টার্গেট পরিষেবা থেকে দেওয়া হয়) অন্তর্ভুক্ত।

API প্রক্সি, ডেভেলপার অ্যাপ, অঞ্চল ইত্যাদি বিভিন্ন ডাইমেনশন ব্যবহার করে আপনি প্রসেসিং ল্যাটেন্সি পরীক্ষা করতে পারবেন।

API সিনট্যাক্স: avg(total_response_time)

ট্রাফিক message_count যোগফল

নির্দিষ্ট সময়সীমার মধ্যে Edge-এর মাধ্যমে প্রসেস করা API কলের মোট সংখ্যা।

আপনার কাছে সবচেয়ে অর্থপূর্ণ উপায়ে ট্রাফিক সংখ্যা গ্রুপ করার জন্য ডাইমেনশন ব্যবহার করুন।

API সিনট্যাক্স: sum(message_count)

আকার

ডাইমেনশন আপনাকে অর্থপূর্ণ গ্রুপে মেট্রিক দেখতে দেয়। যেমন, প্রতিটি ডেভেলপার অ্যাপ বা API প্রক্সির জন্য মোট ট্রাফিক সংখ্যা দেখলে তা অনেক বেশি কার্যকর হয়।

Apigee-তে আগে থেকেই উপলভ্য ডায়মেনশনগুলি নিচে উল্লেখ করা হল। এছাড়াও, আপনি নিজের ডাইমেনশন তৈরি করতে পারবেন, যেমন কাস্টম অ্যানালিটিক্স ব্যবহার করে API মেসেজ কন্টেন্ট বিশ্লেষণ করা নিবন্ধে বর্ণনা করা হয়েছে।

কাস্টম রিপোর্টের নাম ম্যানেজমেন্ট API-তে ব্যবহার করার জন্য নাম বিবরণ
Apigee এন্টিটি
অ্যাক্সেস টোকেন access_token অ্যাপের ব্যবহারকারীর OAuth অ্যাক্সেস টোকেন।
API প্রোডাক্ট api_product

কল করা হচ্ছে এমন API প্রক্সি সহ API প্রোডাক্টের নাম। এই ডাইমেনশন পেতে, কল করা ডেভেলপার অ্যাপকে অবশ্যই এক বা একাধিক API প্রোডাক্টের সাথে যুক্ত থাকতে হবে যাতে API প্রক্সি থাকে এবং কল করা প্রক্সিগুলিকে অবশ্যই API কলের সাথে পাঠানো API কী বা OAuth টোকেন চেক করতে হবে। কী বা টোকেনটি API প্রোডাক্টের সাথে যুক্ত। আরও তথ্যের জন্য, প্রথমেই সবচেয়ে গুরুত্বপূর্ণ: কীভাবে সম্পূর্ণ অ্যানালিটিক্স ডেটা তৈরি করতে হয় দেখুন।

উপরের শর্ত পূরণ না হলে, আপনি "(সেট করা নেই)" ভ্যালু দেখতে পাবেন। এছাড়াও অ্যানালিটিক্স এন্টিটি ভ্যালু "(সেট করা নেই)" বলতে কী বোঝায়? দেখুন।

ক্যাশে কী ax_cache_key

অ্যাক্সেস করা রেসপন্স ক্যাশে ভ্যালু সহ কী। কীভাবে উত্তরের ক্যাশের জন্য কী তৈরি করা হয় সেই সম্পর্কে আরও জানতে, উত্তরের ক্যাশ সংক্রান্ত নীতি দেখুন।

ট্রেস টুল-এ, আপনি যদি এমন কোনও রেসপন্স ক্যাশে নীতি বেছে নেন যা ক্যাশে থেকে পড়ে বা ক্যাশেতে লেখে, তাহলে আপনি responsecache.cachekey ফ্লো ভেরিয়েবলে এই মান দেখতে পাবেন।

ক্যাশের নাম ax_cache_name

Response Cache নীতিতে ব্যবহৃত কী/ভ্যালু সহ ক্যাশের নাম, orgName__envName__ প্রিফিক্স সহ। যেমন, org "foo" হলে, এনভায়রনমেন্ট "test" হলে এবং ক্যাশের নাম "myCache" হলে, ax_cache_name হল foo__test__myCache.

ট্রেস টুল-এ, আপনি কোনও রেসপন্স ক্যাশে নীতি বেছে নিলে, এই ভ্যালু responsecache.cachename ফ্লো ভেরিয়েবল-এ দেখতে পাবেন।

ক্যাশে সোর্স ax_cache_source

যে ক্যাশে লেভেল থেকে রেসপন্স ক্যাশে রিট্রিভ করা হয়েছে ("L1" ইন-মেমরি বা "L2" ডেটাবেস)। এছাড়াও, এই ডাইমেনশন "CACHE_MISS" দেখায় যখন উত্তরটি ক্যাশের পরিবর্তে টার্গেট থেকে ডেলিভার করা হয় (এবং টার্গেট উত্তরের মাধ্যমে উত্তর ক্যাশ রিফ্রেশ করা হয়); অথবা যখন অনুরোধে ক্যাশ কী অবৈধ হয়। ক্যাশে কীয়ের সাইজ ২ কেবির মধ্যে হতে হবে।

ট্রেস টুল-এ, আপনি 'রেসপন্স ক্যাশে' নীতি বেছে নিলে, এই ভ্যালু responsecache.cachesource ফ্লো ভেরিয়েবল-এ দেখতে পাবেন।

ক্যাশে লেভেল সম্পর্কে আরও জানতে, ক্যাশে ইন্টার্নাল দেখুন।

ক্লায়েন্ট ID client_id

API কল করা ডেভেলপার অ্যাপের কনজিউমার কী (API কী), তা API কী হিসেবে অনুরোধে পাস করা হোক অথবা OAuth টোকেনে অন্তর্ভুক্ত করা হোক।

এই ডাইমেনশন পেতে, কল গ্রহণকারী প্রক্সিগুলিকে অবশ্যই একটি বৈধ API কী বা OAuth টোকেনের জন্য চেক করার জন্য কনফিগার করতে হবে। ডেভেলপার অ্যাপ API কী পায়, যা Edge-এ অ্যাপ রেজিস্টার করা হলে OAuth টোকেন তৈরি করতে ব্যবহার করা যায়। আরও তথ্যের জন্য, প্রথমেই সবচেয়ে গুরুত্বপূর্ণ: কীভাবে সম্পূর্ণ অ্যানালিটিক্স ডেটা তৈরি করতে হয় দেখুন।

উপরের শর্ত পূরণ না হলে, আপনি "(সেট করা নেই)" ভ্যালু দেখতে পাবেন। এছাড়াও, অ্যানালিটিক্স এন্টিটি ভ্যালু "(সেট করা নেই)" বলতে কী বোঝায়? দেখুন।

ডেভেলপার অ্যাপ developer_app

Edge-এ রেজিস্টার করা ডেভেলপার অ্যাপ API কল করছে।

এই ডাইমেনশন পেতে, অ্যাপকে অবশ্যই এক বা একাধিক API প্রোডাক্টের সাথে যুক্ত থাকতে হবে যেখানে কল করা API প্রক্সি থাকে এবং প্রক্সিগুলিকে অবশ্যই API কলের সাথে পাঠানো API কী বা OAuth টোকেন চেক করতে হবে। কী বা টোকেন ডেভেলপার অ্যাপকে শনাক্ত করে। আরও তথ্যের জন্য, প্রথমেই: কীভাবে সম্পূর্ণ অ্যানালিটিক্স ডেটা তৈরি করতে হয় দেখুন।

উপরের শর্ত পূরণ না হলে, আপনি "(সেট করা নেই)" ভ্যালু দেখতে পাবেন। এছাড়াও, অ্যানালিটিক্স এন্টিটি ভ্যালু "(সেট করা নেই)" বলতে কী বোঝায়? দেখুন।

ডেভেলপারের ইমেল developer_email

Edge-এ রেজিস্টার করা সেইসব ডেভেলপারদের ইমেল আইডি যাদের অ্যাপ API কল করেছে।

এই ডাইমেনশন পেতে, ডেভেলপারদের অবশ্যই এক বা একাধিক API প্রোডাক্টের সাথে যুক্ত অ্যাপ থাকতে হবে, যেগুলিতে কল করা API প্রক্সি থাকে এবং প্রক্সিগুলিকে অবশ্যই API কলের সাথে পাঠানো API কী বা OAuth টোকেন চেক করতে হবে। কী বা টোকেন ডেভেলপার অ্যাপকে শনাক্ত করে। আরও তথ্যের জন্য, প্রথমেই: কীভাবে সম্পূর্ণ অ্যানালিটিক্স ডেটা তৈরি করতে হয় দেখুন।

উপরের শর্ত পূরণ না হলে, আপনি "(সেট করা নেই)" ভ্যালু দেখতে পাবেন। এছাড়াও, অ্যানালিটিক্স এন্টিটি ভ্যালু "(সেট করা নেই)" বলতে কী বোঝায়? দেখুন।

ডেভেলপার আইডি ডেভেলপার

Edge-এর মাধ্যমে তৈরি করা অনন্য ডেভেলপার আইডি, যা org_name@@@unique_id ফর্ম্যাটে থাকে।

এই ডাইমেনশন পেতে, ডেভেলপারের কাছে অবশ্যই এক বা একাধিক API প্রোডাক্টের সাথে যুক্ত অ্যাপ থাকতে হবে, যেগুলিতে কল করা API প্রক্সি থাকে এবং প্রক্সিগুলিকে অবশ্যই API কলের সাথে পাঠানো API কী বা OAuth টোকেন চেক করতে হবে। কী বা টোকেন ডেভেলপারকে শনাক্ত করে। আরও তথ্যের জন্য, প্রথমেই: কীভাবে সম্পূর্ণ অ্যানালিটিক্স ডেটা তৈরি করতে হয় দেখুন।

উপরের শর্ত পূরণ না হলে, আপনি "(সেট করা নেই)" ভ্যালু দেখতে পাবেন। এছাড়াও, অ্যানালিটিক্স এন্টিটি ভ্যালু "(সেট করা নেই)" বলতে কী বোঝায়? দেখুন।

পরিবেশ পরিবেশ API প্রক্সি যে Edge এনভায়রনমেন্টে ডেপ্লয় করা হয়। যেমন, "test" বা "prod"।
সমস্যা হলে ফল্ট কোড ax_edge_execution_fault_code

সমস্যার ফল্ট কোড। যেমন: messaging.adaptors.http.flow.GatewayTimeout

সমস্যা হওয়া ফ্লো-এর নাম ax_execution_fault
  _flow_name

API প্রক্সিতে যে নামযুক্ত ফ্লো সমস্যার সৃষ্টি করেছে। যেমন, "PreFlow," "PostFlow," অথবা আপনার তৈরি করা কন্ডিশনাল ফ্লোয়ের নাম।

মনে রাখবেন, ম্যানেজমেন্ট API-তে ব্যবহার করার জন্য সম্পূর্ণ নাম হল ax_execution_fault_flow_name, কোনও লাইন ব্রেক ছাড়াই।

যেখানে কোনও সমস্যা হয়নি, সেখানে আপনি "(সেট করা নেই)" ভ্যালু দেখতে পাবেন।

Flow রিসোর্স flow_resource শুধুমাত্র Apigee ব্যবহারের জন্য। আপনি আগ্রহী হলে এই কমিউনিটি পোস্ট দেখুন।
সমস্যা হলে ফ্লো স্টেট ax_execution_fault
  _flow_state

API প্রক্সি ফ্লোয়ের নাম যা ত্রুটি দেখিয়েছে, যেমন "PROXY_REQ_FLOW" অথবা "TARGET_RESP_FLOW."

মনে রাখবেন, ম্যানেজমেন্ট API-তে ব্যবহার করার জন্য সম্পূর্ণ নাম হল ax_execution_fault_flow_state, কোনও লাইন ব্রেক ছাড়াই।

গেটওয়ে ফ্লো আইডি gateway_flow_id API কল Edge-এর মাধ্যমে যাওয়ার সময়, প্রতিটি কল নিজস্ব গেটওয়ে ফ্লো আইডি পায়। যেমন: rrt329ea-12575-114653952-1. Gateway Flow ID, হাই-TPS পরিস্থিতিতে মেট্রিক আলাদা করার জন্য উপযোগী, যেখানে সংস্থা, এনভায়রনমেন্ট ও টাইমস্ট্যাম্পের মতো অন্যান্য ডাইমেনশন কল জুড়ে একই থাকে।
সংগঠন সংস্থা API প্রক্সি যে Edge সংগঠনে ডেপ্লয় করা হয়েছে।
সমস্যাযুক্ত নীতির নাম ax_execution_fault
  _policy_name

যে নীতি সমস্যার সৃষ্টি করেছে এবং API কল ব্যর্থ হওয়ার কারণ হয়েছে, সেটির নাম।

মনে রাখবেন, ম্যানেজমেন্ট API-তে ব্যবহার করার জন্য সম্পূর্ণ নাম হল ax_execution_fault_policy_name, কোনও লাইন ব্রেক ছাড়াই।

কোনও নীতিতে সমস্যা হলেও, নীতি সংক্রান্ত মূল অ্যাট্রিবিউট continueOnError true হিসেবে সেট করা থাকলে, API প্রক্সি ফ্লো চলতে থাকে এবং নীতি সংক্রান্ত সমস্যা এই ডাইমেনশনে গণনা করা হয় না।

প্রক্সি apiproxy API প্রক্সির মেশিন নাম (ডিসপ্লে নাম নয়)।
প্রক্সি বেস পাথ proxy_basepath

API প্রক্সি ProxyEndpoint-এ কনফিগার করা BasePath। বেস পাথে API প্রক্সি URL-এর ডোমেন ও পোর্ট অংশ অন্তর্ভুক্ত থাকে না। যেমন, কোনও API প্রক্সি বেস URL হল https://apigeedocs-test.apigee.net/releasenotes/, তাহলে বেস পাথ হল /releasenotes.

এছাড়াও, ভ্যালু proxy.basepath ফ্লো ভেরিয়েবলে স্টোর করা হয়।

প্রক্সি পাথ সাফিক্স proxy_pathsuffix

API প্রক্সি বেস পাথে রিসোর্স পাথ যোগ করা হয়। যেমন, কোনও API প্রক্সি সার্ভারের বেস URL হল https://apigeedocs-test.apigee.net/hello/ এবং কোনও কল করা হলে https://apigeedocs-test.apigee.net/hello/json, পাথসাফিক্স হল /json।

কোনও পাথসাফিক্স ব্যবহার করা না হলে, ভ্যালু ফাঁকা থাকে।

এছাড়াও, ভ্যালু proxy.pathsuffix ফ্লো ভেরিয়েবলে স্টোর করা হয়।

প্রক্সি রিভিশন apiproxy_revision API কল ম্যানেজ করা API প্রক্সির রিভিশন নম্বর। এর অর্থ এই নয় যে এটি API প্রক্সির লেটেস্ট রিভিশন। কোনও API প্রক্সির ১০টি রিভিশন থাকলে, ৮ম রিভিশন বর্তমানে ডেপ্লয় করা থাকতে পারে। এছাড়াও, কোনও API-তে একাধিক রিভিশন ডিপ্লয় করা হতে পারে, তবে রিভিশনগুলির বেস পাথ আলাদা হতে হবে, যেমন UI-তে প্রক্সি ডিপ্লয় করা নিবন্ধে বর্ণনা করা হয়েছে।
সমাধান করা ক্লায়েন্ট IP ax_resolved_client_ip

যে ক্লায়েন্ট IP অ্যাড্রেস থেকে অনুরোধ করা হয়েছে সেটি থাকে। ax_resolved_client_ip ডাইমেনশনের ভ্যালু ax_true_client_ip ও x_forwarded_for_ip ডাইমেনশনের ভ্যালু থেকে গণনা করা হয়।

মনে রাখবেন, ক্লায়েন্টের আসল IP অ্যাড্রেস ক্যাপচার করার জন্য Akamai-এর মতো রাউটিং প্রোডাক্ট ব্যবহার করার সময়, ক্লায়েন্ট IP, HTTP হেডারে True-Client-IP Edge-এ পাস করা হয়, যা তারপরে ax_true_client_ip ডাইমেনশন সেট করতে ব্যবহার করা হয়।

ax_resolved_client_ip ডাইমেনশনের ভ্যালু নিম্নলিখিতভাবে গণনা করা হয়:

  1. ax_true_client_ip শূন্য না হলে এবং এতে কোনও লোকাল IP অ্যাড্রেস না থাকলে, ax_resolved_client_ip-কে ax_true_client_ip হিসেবে সেট করুন।
  2. অন্যথায়, ax_resolved_client_ip-কে প্রথম নন-লোকাল IP অ্যাড্রেসে সেট করুন x_forwarded_for_ip.
  3. ax_true_client_ip ও x_forwarded_for_ip, দুটিতেই শুধুমাত্র লোকাল IP অ্যাড্রেস থাকলে, ax_resolved_client_ip-কে x_forwarded_for_ip-এর প্রথম লোকাল IP অ্যাড্রেস হিসেবে সেট করুন।
  4. ax_true_client_ip ও x_forwarded_for_ip, দুটিই শূন্য হলে, ax_resolved_client_ip-কে (not set) হিসেবে সেট করুন।
  5. ax_true_client_ip যদি লোকাল IP অ্যাড্রেস হয় এবং x_forwarded_for_ip নাল হয়, তাহলে ax_resolved_client_ip-কে (not set) হিসেবে সেট করুন।
রেসপন্স স্ট্যাটাস কোড response_status_code Apigee থেকে ক্লায়েন্টকে ফরওয়ার্ড করা HTTP রেসপন্স স্ট্যাটাস কোড, যেমন 200, 404, 503 ইত্যাদি। Edge-এ, টার্গেট থেকে পাওয়া রেসপন্স স্ট্যাটাস কোডকে অ্যাসাইন মেসেজ ও রেজ ফল্ট-এর মতো নীতি দিয়ে ওভাররাইট করা যায়। সেই কারণেই এই ডাইমেনশন টার্গেট রেসপন্স কোড (target_response_code)-এর থেকে আলাদা হতে পারে।
ভার্চুয়াল হোস্ট virtual_host যে ভার্চুয়াল হোস্টে API কল করা হয়েছে তার নাম। যেমন, কোনও সংস্থার ডিফল্ট হিসেবে দুটি ভার্চুয়াল হোস্ট থাকে: default (http) ও secure (https)।
ইনবাউন্ড/ক্লায়েন্ট
ক্লায়েন্ট IP অ্যাড্রেস client_ip রাউটারে হিট করা সিস্টেমের IP অ্যাড্রেস, যেমন আসল ক্লায়েন্ট (proxy_client_ip) বা লোড ব্যালেন্সার। X-Forwarded-For হেডার একাধিক IP থাকলে, এটি হল তালিকায় থাকা শেষ IP।
ডিভাইসের বিভাগ ax_ua_device_category যে ধরনের ডিভাইস থেকে API কল করা হয়েছে, যেমন "ট্যাবলেট" বা "স্মার্টফোন"।
OS ফ্যামিলি ax_ua_os_family কল করা ডিভাইসের অপারেটিং সিস্টেমের ফ্যামিলি, যেমন "Android" বা "iOS"।
OS ভার্সন ax_ua_os_version

যে ডিভাইস থেকে কল করা হচ্ছে সেটির অপারেটিং সিস্টেমের ভার্সন।

অপারেটিং সিস্টেমের ভার্সন দেখতে, OS Family (ax_ua_os_family)-এর সাথে এটিকে দ্বিতীয় "ডাউন-ড্রিল" ডাইমেনশন হিসেবে ব্যবহার করা সহায়ক।

প্রক্সি ক্লায়েন্ট IP proxy_client_ip

কলিং ক্লায়েন্টের IP অ্যাড্রেস, যা proxy.client.ip ফ্লো ভেরিয়েবলে সেভ করা থাকে। এটি প্রায়শই ইনবাউন্ড কলের X-Forwarded-For অ্যাড্রেস হয়, যা হল Edge-এর পাওয়া IP অ্যাড্রেস, যেটি শেষ এক্সটার্নাল TCP হ্যান্ডশেক থেকে পাওয়া যায়। এটি কলিং ক্লায়েন্ট বা লোড ব্যালেন্সার হতে পারে। X-Forwarded-For হেডার একাধিক IP থাকলে, এটি হল তালিকায় থাকা শেষ IP।

রেফার করা ক্লায়েন্টের IP ax_true_client_ip

ক্লায়েন্টের আসল IP অ্যাড্রেস ক্যাপচার করার জন্য Akamai-এর মতো রাউটিং প্রোডাক্ট ব্যবহার করার সময়, HTTP হেডার True-Client-IP-এ ক্লায়েন্ট IP Edge-এ পাস করা হয়। এই ডাইমেনশন সেই হেডার থেকে ক্লায়েন্টের আসল IP ক্যাপচার করে।

ax_resolved_client_ip ডাইমেনশনের মাধ্যমে অ্যাক্সেস করা আসল ক্লায়েন্ট IP অ্যাড্রেস নির্ধারণ করতে, Edge ax_true_client_ip এবং x_forwarded_for_ip ডাইমেনশন ব্যবহার করে।

অনুরোধের পাথ request_path

টার্গেট পরিষেবার রিসোর্স পাথ (ডোমেন অন্তর্ভুক্ত নয়), কোয়েরি প্যারামিটার বাদ দিয়ে।

যেমন, Apigee স্যাম্পেল টার্গেটে http://mocktarget.apigee.net /user সহ একাধিক রিসোর্স রয়েছে, যা একটি অভিবাদন রিটার্ন করে। আপনার API প্রক্সি কীভাবে কল করুক না কেন http://mocktarget.apigee.net/user, request_path হল /user.

অনুরোধ করা URI request_uri

কোয়েরি প্যারামিটার সহ টার্গেট পরিষেবার রিসোর্স পাথ (ডোমেন অন্তর্ভুক্ত নয়)।

যেমন, Apigee স্যাম্পেল টার্গেটে http://mocktarget.apigee.net প্রদত্ত নামের জন্য কাস্টম গ্রিটিং রিটার্ন করতে /user?user={name} রিসোর্স ও কোয়েরি প্যারামিটার সহ একাধিক রিসোর্স অন্তর্ভুক্ত থাকে। আপনার API প্রক্সি কল http://mocktarget.apigee.net/user?user=Dude যেভাবে করুন না কেন, request_uri হল /user?user=Dude.

অনুরোধের ক্রিয়াপদ request_verb API অনুরোধে HTTP অনুরোধের ক্রিয়া, যেমন GET, POST, PUT, DELETE.
ইউজার এজেন্ট useragent

API কল করার জন্য ব্যবহৃত ইউজার এজেন্ট বা সফ্টওয়্যার এজেন্টের নাম। উদাহরণ:

  • Chrome-এর মাধ্যমে কল করা একটি Pixel XL: Mozilla/5.0 (Linux; Android 7.1.2; Pixel XL Build/NHG47N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.92 Mobile Safari/537.36
  • Chrome-এর মাধ্যমে কল করা iPad: Mozilla/5.0 (iPad; CPU OS 10_2 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) CriOS/54.0.2840.91 Mobile/14C92 Safari/602.1
  • টার্মিনাল থেকে cURL: curl/7.51.0
ইউজার এজেন্ট ফ্যামিলি ax_ua_agent_family ইউজারএজেন্টের ফ্যামিলি, যেমন "Chrome Mobile" বা "cURL"।
ইউজার এজেন্টের ধরন ax_ua_agent_type "ব্রাউজার", "মোবাইল ব্রাউজার", "লাইব্রেরি" ইত্যাদি ইউজারএজেন্টের ধরন।
ইউজার এজেন্ট ভার্সন ax_ua_agent_version

ইউজারএজেন্টের ভার্সন।

এজেন্ট ফ্যামিলির ভার্সন পেতে, এটি ইউজার এজেন্ট ফ্যামিলি (ax_ua_agent_family)-এর সাথে দ্বিতীয় "ড্রি-ডাউন" ডাইমেনশন হিসেবে ব্যবহার করা হয়।

আউটবাউন্ড/টার্গেট
টার্গেট বেস পাথ target_basepath

টার্গেট পরিষেবার রিসোর্স পাথ (ডোমেন অন্তর্ভুক্ত নয়), কোয়েরি প্যারামিটার বাদ দিয়ে, যা প্রক্সির <TargetEndpoint>-এ সংজ্ঞায়িত করা হয়েছে।

যেমন, ধরা যাক কোনও API প্রক্সি নিম্নলিখিত টার্গেটকে কল করে:

<TargetEndpoint name="default">
...
<HTTPTargetConnection>
  <URL>http://mocktarget.apigee.net/user?user=Dude</URL>
</HTTPTargetConnection>

এই উদাহরণে, target_basepath হল /user.

লক্ষ্য যদি এটি হয়:

<TargetEndpoint name="default">
...
<HTTPTargetConnection>
  <URL>http://mocktarget.apigee.net</URL>
</HTTPTargetConnection>

target_basepath শূন্য হবে।

ট্রেস টুলে, ফ্লো ডায়াগ্রামের শেষে AX আইকন বেছে নিলে, target.basepath ফ্লো ভেরিয়েবল target_basepath ডাইমেনশনের সাথে ম্যাপ করে।

টার্গেট হোস্ট target_host টার্গেট পরিষেবার হোস্ট। যেমন, কোনও API প্রক্সি যদি http://mocktarget.apigee.net/help কল করে, তাহলে target_host হল mocktarget.apigee.net.
টার্গেট IP অ্যাড্রেস target_ip API প্রক্সি সার্ভারে উত্তর পাঠানো টার্গেট পরিষেবার IP অ্যাড্রেস।
টার্গেট রেসপন্স কোড target_response_code

API প্রক্সি সার্ভিসে টার্গেট পরিষেবা দ্বারা রিটার্ন করা HTTP রেসপন্স স্ট্যাটাস কোড, যেমন 200, 404, 503 ইত্যাদি।

"null" ভ্যালু মানে হল, অনুরোধটি টার্গেট পরিষেবায় কখনও পৌঁছায়নি। এটি তখন ঘটে যখন উত্তরটি রেসপন্স ক্যাশে নীতি দ্বারা পরিবেশিত হয় বা যখন অনুরোধ প্রসেস করতে ব্যর্থ হয়।

এটি প্রতিক্রিয়ার স্ট্যাটাস কোড (response_status_code) ডাইমেনশন থেকে আলাদা।

টার্গেট URL target_url

API প্রক্সির TargetEndpoint-এ সংজ্ঞায়িত টার্গেট পরিষেবার সম্পূর্ণ URL।

<TargetEndpoint name="default">
...
<HTTPTargetConnection>
  <URL>http://mocktarget.apigee.net/user?user=Dude</URL>
</HTTPTargetConnection>

এই উদাহরণে, target_url হল http://mocktarget.apigee.net/user?user=Dude.

মনে রাখবেন, API প্রক্সি প্রসেসিং চলাকালীন URL-কে target.url ফ্লো ভেরিয়েবল দিয়ে ওভাররাইড করা যেতে পারে।

প্রক্সি চেনিং এবং স্ক্রিপ্ট টার্গেট (Node.js) ব্যবহার করার সময়, কলিং প্রক্সিতে target_url শূন্য থাকে।

X Forwarded For x_forwarded_for_ip

X-Forwarded-For হেডার অংশে IP অ্যাড্রেসের তালিকা।

ax_resolved_client_ip ডাইমেনশনের মাধ্যমে অ্যাক্সেস করা আসল ক্লায়েন্ট IP অ্যাড্রেস নির্ধারণ করতে, Edge ax_true_client_ip এবং x_forwarded_for_ip ডাইমেনশন ব্যবহার করে।

সময়
সপ্তাহের দিন ax_day_of_week API কল করা হয়েছে এমন দিনের নামের তিন অক্ষরের সংক্ষিপ্ত রূপ। যেমন, সোম, মঙ্গল, বুধ।
মাসের ax_month_of_year API কল করা হয়েছে এমন মাসের সংখ্যাসূচক মান। যেমন, মার্চের জন্য "০৩"।
দিনের নির্দিষ্ট সময় ax_hour_of_day

২৪-ঘণ্টার ক্লক অনুযায়ী, API কল করা হয়েছে এমন ২-সংখ্যার ঘণ্টা। যেমন, রাত ১০টা থেকে ১১টার মধ্যে করা API কলের ক্ষেত্রে, ax_hour_of_day-এর মান হবে ২২।

সময়ের ভ্যালু UTC-তে আছে।

সময় অঞ্চল ax_geo_timezone API কল করা হয়েছে এমন টাইম জোনের সাধারণ নাম, যেমন America/New_York এবং Europe/Dublin.
মাসের সপ্তাহ ax_week_of_month মাসের সংখ্যাসূচক সপ্তাহ। যেমন, কোনও মাসের ৩য় সপ্তাহে করা API কলের জন্য, ax_week_of_month হল ৩।
লোকেশন
শহর ax_geo_city যে শহর থেকে API কল করা হয়েছে।
মহাদেশ ax_geo_continent যে মহাদেশ থেকে API কল করা হয়েছে তার দুই-অক্ষরের কোড। যেমন, উত্তর আমেরিকার জন্য প্রযোজ্য নয়।
দেশ ax_geo_country যে দেশ থেকে এপিআই কল করা হয়েছে তার দুই-অক্ষরের কোড। যেমন, US মার্কিন যুক্তরাষ্ট্রের জন্য।
ভৌগোলিক অঞ্চল ax_geo_region ভৌগোলিক অঞ্চলের জন্য হাইফেন দেওয়া কোড, যেমন, রাজ্য-দেশ। যেমন, Washington-United States-এর জন্য WA-US.
অঞ্চল ax_dn_region API প্রক্সি যেখানে ডেপ্লয় করা হয় সেই Apigee ডেটা সেন্টারের নাম, যেমন us-east-1.
মনিটাইজেশন
মিন্ট ট্রানজ্যাকশন উপেক্ষা করা মেসেজ x_apigee_mint_tx_ignoreMessage মনিটাইজেশন সম্পর্কিত মেসেজ উপেক্ষা করা হবে কিনা তা নির্দিষ্ট করে এমন ফ্ল্যাগ। সব মনিটাইজেশন সংস্থার জন্য false হিসেবে সেট করা আছে।
মিন্ট ট্রানজ্যাকশন স্ট্যাটাস x_apigee_mint_tx_status মনিটাইজেশনের অনুরোধের স্ট্যাটাস, যেমন সম্পূর্ণ হয়েছে, সম্পূর্ণ হয়নি, ভুল বা কোনও স্ট্যাটাস নেই।

ফিল্টার

নির্দিষ্ট বৈশিষ্ট্যযুক্ত মেট্রিকের ফলাফল ফিল্টার করার জন্য ফিল্টার ব্যবহার করা হয়। নিচে কিছু স্যাম্পেল ফিল্টার দেওয়া হল। ফিল্টার নির্ধারণ করার সময় API-স্টাইলের মেট্রিক ও ডাইমেনশনের নাম ব্যবহার করুন।

books বা music নামের API প্রক্সির জন্য রিটার্ন মেট্রিক:

filter=(apiproxy in 'books','music')

"m" দিয়ে শুরু হওয়া নাম সহ API প্রক্সির জন্য মেট্রিক রিটার্ন করে:

filter=(apiproxy like 'm%')

"m" দিয়ে শুরু হয় না এমন নাম সহ API প্রক্সিগুলির মেট্রিক্স রিটার্ন করে:

filter=(apiproxy not like 'm%')

৪০০ থেকে ৫৯৯-এর মধ্যে রেসপন্স স্ট্যাটাস কোড সহ API কলের মেট্রিক রিটার্ন করে:

filter=(response_status_code ge 400 and response_status_code le 599)

200 রেসপন্স স্ট্যাটাস কোড ও 404 টার্গেট রেসপন্স কোড সহ API কলের মেট্রিক রিটার্ন করে:

filter=(response_status_code eq 200 and target_response_code eq 404)

৫০০ রেসপন্স স্ট্যাটাস কোড সহ API কলের মেট্রিক রিটার্ন করে:

filter=(response_status_code eq 500)

সমস্যা হয়নি এমন API কলের মেট্রিক দেখায়:

filter=(is_error eq 0)

রিপোর্ট ফিল্টার তৈরি করতে আপনি নিম্নলিখিত অপারেটর ব্যবহার করতে পারেন।

অপারেটর বিবরণ
in তালিকায় যোগ করুন
notin তালিকা থেকে বাদ দিন
eq সমান, ==
ne সমান নয়, !=
gt >-এর চেয়ে বড়
lt <-এর থেকে কম
ge >=-এর সমান বা তার চেয়ে বড়
le <=-এর সমান বা তার চেয়ে কম
like প্রদান করা প্যাটার্নের সাথে স্ট্রিং প্যাটার্ন ম্যাচ করলে 'সত্য' রিটার্ন করে।
not like প্রদান করা প্যাটার্নের সাথে স্ট্রিং প্যাটার্ন ম্যাচ করলে, মিথ্যা রিটার্ন করে।
similar to এর প্যাটার্ন প্রদত্ত স্ট্রিংয়ের সাথে ম্যাচ করছে কিনা তার উপর নির্ভর করে সত্য বা মিথ্যা রিটার্ন করে। এটি like-এর মতোই, তবে এটি রেগুলার এক্সপ্রেশনের SQL স্ট্যান্ডার্ডের সংজ্ঞা ব্যবহার করে প্যাটার্ন ব্যাখ্যা করে।
not similar to এর প্যাটার্ন প্রদত্ত স্ট্রিংয়ের সাথে ম্যাচ করছে কিনা তার উপর নির্ভর করে মিথ্যা বা সত্য রিটার্ন করে। এটি not like-এর মতোই, তবে এটি SQL স্ট্যান্ডার্ডের রেগুলার এক্সপ্রেশনের সংজ্ঞা ব্যবহার করে প্যাটার্ন ব্যাখ্যা করে।
and একাধিক ফিল্টার এক্সপ্রেশন যোগ করার জন্য 'এবং' লজিক ব্যবহার করতে দেয়। ফিল্টারে এমন ডেটা অন্তর্ভুক্ত থাকে যা সব শর্ত পূরণ করে।
or সম্ভাব্য বিভিন্ন ফিল্টার এক্সপ্রেশন মূল্যায়ন করার জন্য আপনাকে 'অথবা' লজিক ব্যবহার করতে দেয়। ফিল্টারে এমন ডেটা অন্তর্ভুক্ত থাকে যা অন্তত একটি শর্ত পূরণ করে।