আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন .info- তে যান।
ভিডিও
503 সার্ভিস আনঅ্যাভেইলেবল এরর সমাধান করার বিষয়ে আরও জানতে নিচের ভিডিওটি দেখুন।
| ভিডিও | বর্ণনা |
|---|---|
| ব্যাকএন্ড সার্ভার থেকে ৫০৩ সার্ভিস অনুপলব্ধ ত্রুটি | নিম্নলিখিত বিষয়গুলো সম্পর্কে জানুন:
|
লক্ষণ
একটি এপিআই প্রক্সি কলের পর ক্লায়েন্ট অ্যাপ্লিকেশনটি 'Service Unavailable' বার্তা সহ একটি HTTP প্রতিক্রিয়া স্ট্যাটাস 503 পায়।
ত্রুটির বার্তা
আপনি নিম্নলিখিত ত্রুটি বার্তাগুলির মধ্যে একটি দেখতে পারেন:
HTTP/1.1 503 Service Unavailable
HTTP/1.1 503 Service Unavailable: Back-end server is at capacity
HTTP রেসপন্সে আপনি নিচের মতো একটি এরর মেসেজও দেখতে পারেন:
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
দ্রষ্টব্য: উপরের রেসপন্স কোড এবং এরর মেসেজ শুধুমাত্র উদাহরণ। কিছু ক্ষেত্রে, আপনি কোনো এরর মেসেজ ছাড়াই শুধু এরর রেসপন্স কোড পেতে পারেন। ব্যাকএন্ড সার্ভারের বাস্তবায়নের উপর নির্ভর করে এরর রেসপন্স কোড এবং এরর মেসেজের ফরম্যাট ও বিষয়বস্তু ভিন্ন হতে পারে।
কারণ
HTTP স্ট্যাটাস কোড 503-এর অর্থ হলো, সার্ভারটি বর্তমানে আগত অনুরোধগুলো সামলাতে অক্ষম। সাধারণত, এই ত্রুটিটি ঘটে কারণ সার্ভারটি খুব ব্যস্ত থাকে অথবা রক্ষণাবেক্ষণের জন্য সাময়িকভাবে বন্ধ থাকে।
503 সার্ভিস আনঅ্যাভেইলেবল রেসপন্সটির সম্ভাব্য কারণগুলো হলো:
| কারণ | বর্ণনা | কে সমস্যা সমাধানের ধাপগুলো সম্পাদন করতে পারে |
|---|---|---|
| ওভারলোডেড সার্ভার | ব্যাকএন্ড সার্ভারটি অতিরিক্ত ভারাক্রান্ত বা তার ধারণক্ষমতার বাইরে চলে গেছে এবং নতুন কোনো ক্লায়েন্ট অনুরোধ সামলাতে পারছে না। | এজ পাবলিক এবং প্রাইভেট ক্লাউড ব্যবহারকারীরা |
| সার্ভার রক্ষণাবেক্ষণাধীন | ব্যাকএন্ড সার্ভারটি সাময়িকভাবে রক্ষণাবেক্ষণের অধীনে থাকতে পারে। | এজ পাবলিক এবং প্রাইভেট ক্লাউড ব্যবহারকারীরা |
কারণ: সার্ভারে অতিরিক্ত চাপ/সার্ভার রক্ষণাবেক্ষণাধীন
Apigee Edge-এ, নিম্নলিখিত যেকোনো একটি পরিস্থিতিতে একটি ব্যাকএন্ড সার্ভার থেকে 503 Service Unavailable Error-টি আসতে পারে:
- একটি ব্যাকএন্ড সার্ভার অতিরিক্ত ভারাক্রান্ত বা ব্যস্ত থাকায় কোনো নতুন অনুরোধ সামলাতে পারছে না।
- রক্ষণাবেক্ষণের কারণে ব্যাকএন্ড সার্ভারটি সাময়িকভাবে বন্ধ রয়েছে।
রোগ নির্ণয়
ত্রুটি নির্ণয় করতে আপনি নিম্নলিখিত তিনটি পদ্ধতির যেকোনো একটি ব্যবহার করতে পারেন:
- ট্রেস টুল
- NGINX অ্যাক্সেস লগ
- ব্যাকএন্ড সার্ভারে সরাসরি কল
প্রতিটি পদ্ধতি সম্পর্কে জানতে নিচের ট্যাবগুলোতে ক্লিক করুন।
ট্রেস টুল
- ট্রেস সেশনটি চালু করুন এবং সমস্যাটি পুনরুৎপাদন করতে এপিআই কলটি করুন - ৫০৩ সার্ভিস আনঅ্যাভেইলেবল।
- ব্যর্থ হওয়া অনুরোধগুলোর মধ্যে একটি নির্বাচন করুন এবং ট্রেসটি পরীক্ষা করুন।
- অনুসন্ধানের বিভিন্ন ধাপ অতিক্রম করে ত্রুটিটি কোথায় ঘটেছে তা খুঁজে বের করুন।
- যদি আপনি দেখেন যে টার্গেট সার্ভার থেকে প্রতিক্রিয়া হিসাবে 503 ত্রুটি ফেরত আসছে, তাহলে সেই 503 ত্রুটির কারণ হলো টার্গেট সার্ভারটি।
এখানে একটি নমুনা ট্রেস স্ক্রিনশট দেওয়া হলো, যেখানে টার্গেট সার্ভার থেকে প্রাপ্ত 503 সার্ভিস আনঅ্যাভেইলেবল রেসপন্সটি দেখানো হয়েছে:

- 'টার্গেট সার্ভার থেকে প্রাপ্ত প্রতিক্রিয়া' পর্যায়ে ক্লিক করুন এবং 'প্রতিক্রিয়া হেডার' ও 'প্রতিক্রিয়া বিষয়বস্তু' বিভাগগুলি ভালোভাবে দেখুন যে সেগুলিতে কোনও দরকারী তথ্য আছে কিনা:
- রেসপন্স হেডারে সার্ভার হেডার থাকতে পারে, যা নির্দেশ করে যে ত্রুটিপূর্ণ রেসপন্সটি কোথা থেকে পাঠানো হয়েছিল।
- টার্গেট সার্ভার কেন ৫০৩ রেসপন্স কোডটি পাঠিয়েছে, সে সম্পর্কে রেসপন্স কন্টেন্টে অতিরিক্ত তথ্য থাকতে পারে।

- নিচে দেওয়া ধাপগুলো অনুসরণ করে ট্রেসের AX (অ্যানালিটিক্স ডেটা রেকর্ডেড) ফেজে X-Apigee-fault-source এবং X-Apigee-fault-code- এর মানগুলো যাচাই করে নিশ্চিত করুন যে 503 এররটি টার্গেট সার্ভার থেকেই আসছে।
- নিচের স্ক্রিনশটে দেখানো অনুযায়ী AX (অ্যানালিটিক্স ডেটা রেকর্ড করা) পর্যায়ে ক্লিক করুন:

- Phase Details-এর নিচে স্ক্রল করে Response Headers সেকশনে যান এবং নিচে দেখানো অনুযায়ী X-Apigee-fault-code এবং X-Apigee-fault-source- এর মান নির্ধারণ করুন:

- যদি X-Apigee-fault-source এবং X-Apigee-fault-code- এর মান নিচের টেবিলে দেখানো মানের সাথে মিলে যায়, তাহলে আপনি নিশ্চিত হতে পারেন যে 503 ত্রুটিটি টার্গেট সার্ভার থেকে আসছে:
প্রতিক্রিয়া হেডার মূল্য এক্স-এপিজি-ফল্ট-সোর্স লক্ষ্য এক্স-এপিজি-ফল্ট-কোড messaging.adaptors.http.flow.ErrorResponseCode
- নিচের স্ক্রিনশটে দেখানো অনুযায়ী AX (অ্যানালিটিক্স ডেটা রেকর্ড করা) পর্যায়ে ক্লিক করুন:
- আপনি প্রক্সি চেইনিং ব্যবহার করছেন কিনা, অর্থাৎ টার্গেট সার্ভার/টার্গেট এন্ডপয়েন্ট Apigee-তে অন্য কোনো প্রক্সি কল করছে কিনা, তা পরীক্ষা করুন। এটি নির্ধারণ করতে:
- 'টার্গেট সার্ভারে পাঠানো অনুরোধ' পর্যায়ে ফিরে যান এবং 'Show Curl' বোতামে ক্লিক করে টার্গেট সার্ভারের হোস্ট অ্যালিয়াস নির্ধারণ করুন।
- যদি টার্গেট সার্ভার হোস্ট অ্যালিয়াসটি কোনো ভার্চুয়াল হোস্ট অ্যালিয়াসকে নির্দেশ করে, তাহলে এটি প্রক্সি চেইনিং। এই ক্ষেত্রে, 503 সার্ভিস আনঅ্যাভেইলেবল ত্রুটির আসল কারণটি নির্ণয় না করা পর্যন্ত আপনাকে চেইনড প্রক্সির জন্য উপরের সমস্ত ধাপগুলি পুনরাবৃত্তি করতে হবে। এইসব ক্ষেত্রে, 503 সার্ভিস আনঅ্যাভেইলেবল ত্রুটিটি অন্যান্য চেইনড প্রক্সির অন্যান্য পর্যায়েও ঘটতে পারে, যা এই প্লেবুকটি ব্যবহার করে নির্ণয় করা যেতে পারে।
- যদি টার্গেট সার্ভার হোস্ট অ্যালিয়াস আপনার ব্যাকএন্ড সার্ভারকে নির্দেশ করে, তাহলে রেজোলিউশন- এ যান।
NGINX অ্যাক্সেস লগ
ব্যাকএন্ড সার্ভার থেকে ৫০৩ স্ট্যাটাস কোডটি পাঠানো হয়েছিল কিনা, তা নির্ধারণ করতে আপনি NGINX অ্যাক্সেস লগও দেখতে পারেন। এটি বিশেষভাবে কার্যকর যদি সমস্যাটি অতীতে ঘটে থাকে অথবা যদি সমস্যাটি মাঝে মাঝে হয় এবং আপনি UI-তে এর ট্রেস ক্যাপচার করতে না পারেন। NGINX অ্যাক্সেস লগ থেকে এই তথ্য নির্ধারণ করতে নিম্নলিখিত ধাপগুলো অনুসরণ করুন:
- NGINX অ্যাক্সেস লগগুলো পরীক্ষা করুন।
/opt/apigee/var/log/edge-router/nginx/<org>~<env>.<port#>_access_log
- একটি নির্দিষ্ট সময়কালের মধ্যে নির্দিষ্ট এপিআই প্রক্সির জন্য কোনো ৫০৩ ত্রুটি (যদি সমস্যাটি অতীতে ঘটে থাকে) অথবা এখনও ৫০৩ ত্রুটির কারণে ব্যর্থ হওয়া কোনো অনুরোধ অনুসন্ধান করুন।
- যদি কোনো 503 এরর থাকে, তাহলে এররটি ব্যাকএন্ড সার্ভার থেকে আসছে কিনা তা পরীক্ষা করুন। যদি X-Apigee-fault-source এবং X-Apigee-fault-code- এর মান নিচের টেবিলে দেখানো মানের সাথে মিলে যায়, তাহলে 503 এররটি ব্যাকএন্ড সার্ভার থেকে আসছে:
প্রতিক্রিয়া হেডার মূল্য এক্স-এপিজি-ফল্ট-সোর্স লক্ষ্য এক্স-এপিজি-ফল্ট-কোড messaging.adaptors.http.flow.ErrorResponseCode টার্গেট সার্ভারের কারণে সৃষ্ট 503 এররটি দেখানো হলো:

- নির্দিষ্ট এপিআই প্রক্সিটি পর্যালোচনা করুন এবং নিশ্চিত করুন যে আপনি প্রক্সি চেইনিং ব্যবহার করছেন, অর্থাৎ টার্গেট সার্ভার/টার্গেট এন্ডপয়েন্ট Apigee-তে অন্য কোনো প্রক্সি কল করছে না। যদি আপনি প্রক্সি চেইনিং ব্যবহার করে থাকেন, তবে চেইনড প্রক্সিটির জন্য আপনাকে উপরের সমস্ত ধাপগুলি পুনরাবৃত্তি করতে হবে, যতক্ষণ না আপনি নির্ধারণ করতে পারেন যে আসলে কী কারণে 503 সার্ভিস আনঅ্যাভেইলেবল ত্রুটিটি ঘটছে। এই ক্ষেত্রে, 503 সার্ভিস আনঅ্যাভেইলেবল ত্রুটিটি অন্যান্য চেইনড প্রক্সিগুলির অন্যান্য পর্যায়েও ঘটতে পারে, যা আপনি এই প্লেবুকটি ব্যবহার করে নির্ণয় করতে পারেন।
- যদি আপনি নিশ্চিত হন যে আপনি প্রক্সি চেইনিং ব্যবহার করছেন না এবং 503 ত্রুটিটি আপনার ব্যাকএন্ড সার্ভার থেকে আসছে, তাহলে সমাধান (Resolution ) অংশে যান।
ব্যাকএন্ড সার্ভারে কল
আপনি সরাসরি ব্যাকএন্ড সার্ভারে কল করে যাচাই করতে পারেন যে, Apigee Edge-এর মাধ্যমে অনুরোধটি করার সময় প্রাপ্ত 503 Service Unavailable রেসপন্সটির মতোই একই রেসপন্স পাচ্ছেন কিনা।
- অনুরোধের অংশ হিসেবে ব্যাকএন্ড সার্ভারে পাঠানোর জন্য প্রয়োজনীয় সমস্ত হেডার, কোয়েরি প্যারামিটার এবং ক্রেডেনশিয়াল আপনার কাছে আছে কিনা, তা নিশ্চিত করুন।
- যদি ব্যাকএন্ড পরিষেবাটি সর্বজনীনভাবে অ্যাক্সেসযোগ্য হয়, তাহলে আপনি `curl` কমান্ড, `Postman` বা অন্য কোনো `REST Client` ব্যবহার করে সরাসরি ব্যাকএন্ড সার্ভার API-কে কল করতে পারেন।
- যদি ব্যাকএন্ড সার্ভারটি শুধুমাত্র মেসেজ প্রসেসর থেকে অ্যাক্সেসযোগ্য হয়, তাহলে আপনি curl কমান্ড, Postman বা অন্য কোনো REST ক্লায়েন্ট ব্যবহার করে সরাসরি মেসেজ প্রসেসর থেকে ব্যাকএন্ড সার্ভার API কল করতে পারেন।
- যাচাই করুন যে ব্যাকএন্ড পরিষেবাটি সত্যিই 503 Service Unavailable ত্রুটি ফেরত দিচ্ছে।
সমাধান
যদি আপনি নিশ্চিত হন যে 503 ত্রুটিটি ব্যাকএন্ড সার্ভার থেকে আসছে, তাহলে সমস্যাটি সমাধান করতে আপনি নিম্নলিখিত পদক্ষেপগুলো নিতে পারেন:
- যদি ব্যাকএন্ড সার্ভার রক্ষণাবেক্ষণের জন্য বন্ধ থাকার কারণে সমস্যাটি হয়, তাহলে আপনি রক্ষণাবেক্ষণের সময়কাল শেষ হওয়ার পর ব্যাকএন্ড সার্ভারটিকে অনলাইন করতে পারেন।
- যদি ব্যাকএন্ড সার্ভার ওভারলোডের কারণে সমস্যাটি হয়ে থাকে, তাহলে আপনার ব্যাকএন্ড সার্ভারে অ্যাক্সেস থাকলে সমস্যাটি সমাধান করুন। অন্যথায়, সমস্যাটি সমাধানের জন্য আপনাকে আপনার ব্যাকএন্ড সার্ভার টিমের সাথে কাজ করতে হতে পারে।
এপিআই মনিটরিং ব্যবহার করে সমস্যা নির্ণয় করুন
এপিআই মনিটরিং আপনাকে ত্রুটি, পারফরম্যান্স, এবং লেটেন্সি সমস্যা ও সেগুলোর উৎস—যেমন ডেভেলপার অ্যাপ, এপিআই প্রক্সি, ব্যাকএন্ড টার্গেট বা এপিআই প্ল্যাটফর্ম—দ্রুত শনাক্ত করে সমস্যাযুক্ত এলাকাগুলো চিহ্নিত করতে সক্ষম করে।
এপিআই মনিটরিং ব্যবহার করে আপনার এপিআই-এর 5xx সমস্যাগুলো কীভাবে সমাধান করবেন, তা দেখানোর জন্য একটি নমুনা পরিস্থিতি ধাপে ধাপে অনুসরণ করুন । উদাহরণস্বরূপ, আপনি হয়তো একটি অ্যালার্ট সেট আপ করতে চাইতে পারেন, যাতে messaging.adaptors.http.flow.ErrorResponseCode ফল্টের সংখ্যা একটি নির্দিষ্ট সীমা অতিক্রম করলে আপনাকে জানানো হয়।
রোগ নির্ণয়ের তথ্য অবশ্যই সংগ্রহ করতে হবে
উপরোক্ত নির্দেশাবলী অনুসরণ করার পরেও যদি সমস্যাটি থেকে যায়, তাহলে অনুগ্রহ করে নিম্নলিখিত ডায়াগনস্টিক তথ্যগুলো সংগ্রহ করুন এবং তারপর Apigee Support-এর সাথে যোগাযোগ করুন।
আপনি যদি পাবলিক ক্লাউড ব্যবহারকারী হন, তাহলে নিম্নলিখিত তথ্যগুলো প্রদান করুন:
- সংস্থার নাম
- পরিবেশের নাম
- এপিআই প্রক্সি নাম
- 503 ত্রুটিটি পুনরুৎপাদন করার জন্য সম্পূর্ণ কার্ল (curl) কমান্ডটি ব্যবহার করুন।
- 503 সার্ভিস আনঅ্যাভেইলেবল ত্রুটিসহ অনুরোধগুলো ধারণকারী ট্রেস ফাইল
- যদি বর্তমানে ৫০৩ ত্রুটি না ঘটে থাকে, তবে অতীতে যখন ৫০৩ ত্রুটি ঘটেছিল সেই সময়কাল এবং টাইমজোনের তথ্য প্রদান করুন।
আপনি যদি একজন প্রাইভেট ক্লাউড ব্যবহারকারী হন, তাহলে নিম্নলিখিত তথ্যগুলো প্রদান করুন:
- ব্যর্থ হওয়া অনুরোধগুলোর জন্য সম্পূর্ণ ত্রুটি বার্তা দেখা গেছে।
- প্রতিষ্ঠান, পরিবেশের নাম এবং এপিআই প্রক্সির নাম, যেগুলোর জন্য আপনি ৫০৩ ত্রুটি দেখতে পাচ্ছেন।
- এপিআই প্রক্সি বান্ডেল।
- 503 সার্ভিস আনঅ্যাভেইলেবল ত্রুটিসহ অনুরোধগুলো সম্বলিত ট্রেস ফাইল।
- NGINX অ্যাক্সেস লগ।
/opt/apigee/var/log/edge-router/nginx/<org>~<env>.<port#>_access_log
- মেসেজ প্রসেসর লগ।
/opt/apigee/var/log/edge-message-processor/logs/system.log
- টাইমজোন তথ্যসহ সেই সময়কাল, যখন ৫০৩ ত্রুটিগুলো ঘটেছিল।