যখন API অনুরোধগুলি Apigee Edge এর মাধ্যমে করা হয়, তখন Apigee Edge উপাদান রাউটার এবং বার্তা প্রসেসর বা ব্যাকএন্ড সার্ভারগুলি ক্লায়েন্ট অ্যাপ্লিকেশনগুলিতে ত্রুটিগুলি ফেরত দিতে পারে।
বার্তা প্রসেসর থেকে ত্রুটি
মেসেজ প্রসেসর হল Apigee Edge এর মূল উপাদান যা নীতিগুলি প্রক্রিয়া করে এবং ব্যাকএন্ড সার্ভারগুলির সাথে যোগাযোগ করে৷ এটি ত্রুটিগুলি ফেরত দিতে পারে যদি এটি কোনও সমস্যা সনাক্ত করে যেমন:
নেটওয়ার্ক সংযোগ সমস্যা, TLS হ্যান্ডশেক ব্যর্থতা, ব্যাকএন্ড সার্ভারের অনুপলব্ধতা, ব্যাকএন্ড সার্ভারের সাথে যোগাযোগের সময় প্রতিক্রিয়ার অভাব
নীতি নির্বাহের সময় ব্যর্থতা
অবৈধ HTTP শিরোনাম, এনকোডিং, পথ, HTTP স্পেসিফিকেশন মেনে না চলা, পণ্যের সীমা অতিক্রম করা ইত্যাদি।
ক্লায়েন্ট অ্যাপ্লিকেশন দ্বারা পাঠানো HTTP অনুরোধ সঙ্গে
বা
ব্যাকএন্ড সার্ভার দ্বারা পাঠানো HTTP প্রতিক্রিয়া সহ
এবং আরো অনেক
বার্তা প্রসেসর থেকে নমুনা ত্রুটি
মেসেজ প্রসেসর সর্বদা একটি HTTP স্ট্যাটাস কোড ফেরত দেয় যার পরে একটি ত্রুটি বার্তার সাথে JSON ফর্ম্যাটে একটি ত্রুটি কোড নীচে দেখানো হয়:
ক্লায়েন্ট অ্যাপ্লিকেশন নিম্নলিখিত উদাহরণের মত একটি প্রতিক্রিয়া কোড পায়:
HTTP/1.1 414 Request-URI Too Long
বার্তা প্রসেসর থেকে একটি ত্রুটি প্রতিক্রিয়া নিম্নলিখিত বিন্যাসে উপস্থিত হয়:
ত্রুটির সম্ভাব্য কারণ বর্ণনা করে ত্রুটি বার্তা রয়েছে৷
errorcode
ত্রুটি কোড ( ফল্ট কোড হিসাবেও উল্লেখ করা হয়) ত্রুটির সাথে যুক্ত
রানটাইম ত্রুটি ক্যাটালগ
Apigee Edge Message Processor কম্পোনেন্ট দ্বারা ফেরত দেওয়া রানটাইম এরর কোড (নন-পলিসি ত্রুটির জন্য) সম্পর্কে আপনার যে সমস্ত তথ্য জানা দরকার এই ত্রুটি ক্যাটালগটি প্রদান করে। এতে প্রতিটি ত্রুটি কোডের জন্য নিম্নলিখিত তথ্য রয়েছে:
HTTP স্ট্যাটাস কোড
ত্রুটি বার্তা
ত্রুটির সম্ভাব্য কারণ
যেকোন সংশ্লিষ্ট HTTP স্পেসিফিকেশন এবং/অথবা পণ্যের সীমা
প্লেবুক এবং ভিডিওগুলি যাতে ত্রুটির কারণ নির্ণয়ের নির্দেশাবলী এবং কার্যকর সমাধানগুলি রয়েছে যা আপনি নিজেই ত্রুটিটি সমাধান করতে আবেদন করতে পারেন (যেখানে উপলব্ধ)
আপনি নিজেই ত্রুটিটি সমাধান করতে আবেদন করতে পারেন তা ঠিক করুন
একটি নির্দিষ্ট ত্রুটি কোডের জন্য উপরের তথ্য প্রদর্শন করতে টেবিলটি ফিল্টার করতে নীচের অনুসন্ধান বাক্সটি ব্যবহার করুন৷ আপনি সারণীতে যেকোনো ক্ষেত্রে স্ট্যাটাস কোড বা যেকোনো বিষয়বস্তু অনুসন্ধান করতে পারেন।
search অনুসন্ধান
ত্রুটি কোড
বর্ণনা
ঠিক করুন
flow.*
flow.APITimedOut
HTTP স্থিতি কোড:
504 Gateway Timeout
ত্রুটি বার্তা:
API timed out
সম্ভাব্য কারণ:
এই ত্রুটিটি ঘটে যদি:
নির্দিষ্ট API প্রক্সির জন্য api.timeout বৈশিষ্ট্য দ্বারা কনফিগার করা সময়সীমার মধ্যে ব্যাকএন্ড সার্ভার প্রতিক্রিয়া জানায় না।
গণনামূলকভাবে নিবিড় ক্রিয়াকলাপ, উচ্চ লোড, বা দুর্বল কর্মক্ষমতার কারণে একটি নীতি দীর্ঘ সময় নেয়।
দ্রষ্টব্য: এই প্লেবুক ত্রুটি কোড messaging.adaptors.http.flow.GatewayTimeout সমস্যা সমাধানের নির্দেশনা প্রদান করে; যাইহোক, আপনি flow.APITimedOut সমস্যা সমাধানের জন্য একই প্লেবুক ব্যবহার করতে পারেন। APITimedOut ত্রুটি কোড।
ব্যাকএন্ড/টার্গেট সার্ভারের HTTP প্রতিক্রিয়া শিরোনামে নির্দিষ্ট করা এনকোডিং Content-Encoding বৈধ এবং Apigee Edge দ্বারা সমর্থিত ,
কিন্তু
HTTP প্রতিক্রিয়ার অংশ হিসাবে ব্যাকএন্ড/টার্গেট সার্ভার দ্বারা পাঠানো পেলোড বিন্যাস Content-Encoding শিরোনামে নির্দিষ্ট করা এনকোডিং বিন্যাসের সাথে মেলে না
ব্যাকএন্ড সার্ভার বাস্তবায়নের উপর নির্ভর করে ত্রুটি বার্তা এবং বিন্যাস পরিবর্তিত হতে পারে।
সম্ভাব্য কারণ:
ব্যাকএন্ড সার্ভার Apigee Edge-এ স্ট্যাটাস কোড 504 দিয়ে সাড়া দিলে এই ত্রুটি ঘটে।
দ্রষ্টব্য: ক্লায়েন্ট অ্যাপ্লিকেশনগুলিতে পাঠানো ত্রুটি বার্তার অংশ হিসাবে ত্রুটি কোড messaging.adaptors.http.flow.ErrorResponseCode ফেরত দেওয়া হয় না। কারণ যখনই ব্যাকএন্ড সার্ভার কোনো ত্রুটি এবং 4XX বা 5XX স্ট্যাটাস কোডগুলির যেকোনো একটির সাথে প্রতিক্রিয়া জানায় তখন এই ত্রুটি কোডটি Apigee Edge দ্বারা সেট করা হয়। আপনি API মনিটরিং, NGINX অ্যাক্সেস লগ, বা বিশ্লেষণ ডেটাবেসে এই ত্রুটি কোডটি দেখতে পারেন।
messaging.adaptors.http.flow.GatewayTimeout
HTTP স্থিতি কোড:
504 Gateway Timeout
ত্রুটি বার্তা:
Gateway Timeout
সম্ভাব্য কারণ:
বার্তা প্রসেসরে কনফিগার করা I/O টাইমআউট সময়ের মধ্যে ব্যাকএন্ড সার্ভার Apigee এজ মেসেজ প্রসেসরে সাড়া না দিলে এই ত্রুটি ঘটে।
এইচটিটিপি POST অংশ হিসাবে ক্লায়েন্ট অ্যাপ্লিকেশন দ্বারা Content-Length শিরোনামটি পাস না করা হলে এবং Apigee এজ-এ পাঠানো PUT অনুরোধগুলি এই ত্রুটিটি ঘটে।
দ্রষ্টব্য: এই ত্রুটির সাথে ব্যর্থ হওয়া অনুরোধগুলি ট্রেস টুলে ক্যাপচার করা যাবে না, যেহেতু বার্তা প্রসেসর খুব প্রাথমিক পর্যায়ে এই বৈধতাটি সম্পাদন করে, অনুরোধটি প্রক্রিয়াকরণ এবং API প্রক্সিতে কোনো নীতি কার্যকর করার অনেক আগে।
এই ত্রুটিটি ঘটে যদি Apigee Edge যেকোনও টার্গেটএন্ডপয়েন্টে অনুরোধটি রুট করতে না পারে কারণ:
কোন রুট নিয়ম ( <RouteRule> ) শর্ত নেই যা একটি প্রক্সিতে অনুরোধের সাথে মেলে
এবং
প্রক্সিএন্ডপয়েন্টে কোনো ডিফল্ট রুট নিয়ম সংজ্ঞায়িত নেই (যেমন, <RouteRule> কোনো শর্ত ছাড়াই)
ঠিক করুন
এই ত্রুটিটি সমাধান করতে, এই নির্দেশাবলী অনুসরণ করুন:
আপনার প্রক্সিএন্ডপয়েন্টে সংজ্ঞায়িত রুট নিয়মগুলি পর্যালোচনা করুন এবং আপনার অনুরোধের সাথে মেলে এমন অন্তত একটি রুট নিয়ম শর্ত আছে তা নিশ্চিত করতে সংশোধন করুন৷
আপনার একাধিক রুট রুলস থাকলে কোনো শর্ত ছাড়াই একটি ডিফল্ট রুট নিয়ম সংজ্ঞায়িত করা একটি ভাল অভ্যাস।
নিশ্চিত করুন যে ডিফল্ট রুট নিয়মটি সর্বদা শর্তসাপেক্ষ রুটের তালিকায় সর্বশেষে সংজ্ঞায়িত করা হয়েছে কারণ নিয়মগুলি প্রক্সিএন্ডপয়েন্টে উপরে-নিচে মূল্যায়ন করা হয়।
প্রক্সিএন্ডপয়েন্টে <RouteRule> শর্তগুলি সংজ্ঞায়িত করার বিষয়ে আরও জানতে, শর্তসাপেক্ষ লক্ষ্যগুলি দেখুন।
messaging.runtime.SenseRaiseFault
HTTP স্থিতি কোড:
403 Forbidden
ত্রুটি বার্তা:
Sense Fault
সম্ভাব্য কারণ:
এই ত্রুটিটি ঘটে যদি একটি API অনুরোধ একটি নির্দিষ্ট ক্লায়েন্ট আইপি ঠিকানা থেকে করা হয় যা Apigee Sense নিয়মের অংশ হিসাবে ব্লক করা হয়।
ঠিক করুন
এই ত্রুটিটি সমাধান করতে, এই নির্দেশাবলী অনুসরণ করুন:
Apigee Sense-এ কনফিগার করা নিয়মগুলি পরীক্ষা করে আপনি নির্দিষ্ট ক্লায়েন্ট আইপি ঠিকানাটি ব্লক করেছেন তা যাচাই করুন। যদি এটি ব্লক করা হয়, তাহলে এটি নির্দেশ করে যে এটি ডিজাইনের মতো কাজ করছে।
যদি নির্দিষ্ট ক্লায়েন্ট আইপি ঠিকানাটি ব্লক করা না থাকে, কিন্তু আপনি এখনও এই ত্রুটিটি পাচ্ছেন, তাহলে Apigee Edge সাপোর্টের সাথে যোগাযোগ করুন।
protocol.http.* - Caused due to bad request
protocol.http.BadFormData
HTTP স্থিতি কোড:
500 Internal Server Error
ত্রুটি বার্তা:
Bad Form Data
সম্ভাব্য কারণ:
এই ত্রুটিটি ঘটে যদি এবং শুধুমাত্র যদি নিম্নলিখিত সমস্ত শর্ত পূরণ করা হয়:
Apigee Edge এ ক্লায়েন্টের পাঠানো HTTP অনুরোধে রয়েছে:
Content-Type: application/x-www-form-urlencoded , এবং
Apigee Edge-এর API প্রক্সি অনুরোধের প্রবাহে ExtractVariables বা AssignMessage নীতি ব্যবহার করে অনুমোদিত নয় এমন কোনো অক্ষর ধারণকারী নির্দিষ্ট ফর্ম প্যারামিটার পড়ে।
Apigee Edge-এ ক্লায়েন্ট অ্যাপ্লিকেশানের পাঠানো HTTP অনুরোধের অংশ হিসাবে Apigee Edge-এ অনুলিপি করার অনুমতি নেই এমন একটি নির্দিষ্ট HTTP শিরোনামটি একই বা ভিন্ন মান সহ একাধিকবার উপস্থিত হলে এই ত্রুটি ঘটে।
Header {header_name} contains invalid character {character}
সম্ভাব্য কারণ:
Apigee Edge এ ক্লায়েন্ট অ্যাপ্লিকেশন দ্বারা HTTP অনুরোধের অংশ হিসাবে প্রেরিত শিরোনামের নামটিতে সমান (=), কমা (,), সেমিকোলন (;), ট্যাব, CRLF এবং নিউলাইন অক্ষরের মতো অবৈধ অক্ষর থাকলে এই ত্রুটি ঘটে।
এই ত্রুটিটি ঘটে যদি ক্লায়েন্ট অ্যাপ্লিকেশন দ্বারা Apigee এজ-এ পাঠানো HTTP অনুরোধ URL-এর পাথে এমন অক্ষর থাকে যা RFC 3986, বিভাগ 3.3: পাথ অনুযায়ী অনুমোদিত নয়।
নিশ্চিত করুন যে ক্লায়েন্ট অ্যাপ্লিকেশন দ্বারা Apigee এজ-এ পাঠানো HTTP অনুরোধ URL-এর পাথে এমন কোনো অক্ষর নেই যা RFC 3986, বিভাগ 3.3: পাথ অনুযায়ী অনুমোদিত নয়।
protocol.http.TooBigBody
HTTP স্থিতি কোড:
413 Request Entity Too Large
ত্রুটি বার্তা:
Body buffer overflow
সম্ভাব্য কারণ:
Apigee Edge-এ HTTP অনুরোধের অংশ হিসেবে ক্লায়েন্ট অ্যাপ্লিকেশনের পাঠানো পেলোডের আকার Apigee Edge-এ অনুমোদিত সীমার চেয়ে বেশি হলে এই ত্রুটি ঘটে।
HTTP প্রতিক্রিয়ার অংশ হিসাবে ক্লায়েন্ট দ্বারা প্রেরিত Content-Encoding শিরোনামটিতে একটি এনকোডিং/পেলোড বিন্যাস থাকে যা Apigee Edge দ্বারা সমর্থিত নয় তাহলে এই ত্রুটিটি ঘটে।
এই ত্রুটিটি ঘটে যদি ব্যাকএন্ড সার্ভারের অনুরোধ URL, ফ্লো ভেরিয়েবল target.url দ্বারা উপস্থাপিত হয়, এমন একটি পথ থাকে যা ফরওয়ার্ড স্ল্যাশ (/) এর পরিবর্তে একটি প্রশ্ন চিহ্ন (?) দিয়ে শুরু হয়, যা অবৈধ ।
Apigee Edge-এ ব্যাকএন্ড সার্ভারের পাঠানো HTTP প্রতিক্রিয়ার অংশ হিসেবে Apigee Edge-এ যে নির্দিষ্ট HTTP শিরোনামটির অনুলিপি করার অনুমতি নেই, সেটি একই বা ভিন্ন মান সহ একাধিকবার উপস্থিত হলে এই ত্রুটি ঘটে।
Header {header_name} contains invalid character {character}
সম্ভাব্য কারণ:
HTTP প্রতিক্রিয়ার অংশ হিসাবে ব্যাকএন্ড সার্ভার দ্বারা প্রেরিত শিরোনামের নামটিতে সমান (=), কমা (,), সেমিকোলন (;), ট্যাব, CRLF এবং নিউলাইন অক্ষরের মতো অবৈধ অক্ষর থাকলে এই ত্রুটি ঘটে।
Proxy refused to create tunnel with response status {status code}
সম্ভাব্য কারণ:
ফায়ারওয়াল, ACL (অ্যাক্সেস কন্ট্রোল লিস্ট), DNS সমস্যা, ব্যাকএন্ড সার্ভারের প্রাপ্যতা ইত্যাদির কারণে প্রক্সি সার্ভার দ্বারা Apigee Edge এবং ব্যাকএন্ড সার্ভারের মধ্যে টানেল তৈরির সময় এই ত্রুটি ঘটে।
দ্রষ্টব্য: ত্রুটি বার্তার স্ট্যাটাস কোড ( faultstring ) সমস্যাটির উচ্চ-স্তরের কারণ প্রদান করে।
Response Status code 306 is reserved, so can't be used.
সম্ভাব্য কারণ:
ব্যাকএন্ড সার্ভার Apigee Edge-এ 306 স্ট্যাটাস কোড সহ উত্তর দিলে এই ত্রুটি ঘটে।
306 স্ট্যাটাস কোডটি HTTP স্পেসিফিকেশনের পূর্ববর্তী সংস্করণে সংজ্ঞায়িত করা হয়েছিল। বর্তমান HTTP স্পেসিফিকেশন অনুযায়ী, এই কোডটি সংরক্ষিত এবং ব্যবহার করা উচিত নয়।
যেহেতু স্ট্যাটাস কোড 306 সংরক্ষিত, নিশ্চিত করুন যে আপনার ব্যাকএন্ড সার্ভার Apigee Edge-এ একটি প্রতিক্রিয়া পাঠানোর সময় এই স্ট্যাটাস কোডটি ব্যবহার না করে।
protocol.http.Response405WithoutAllowHeader
HTTP স্থিতি কোড:
502 Bad Gateway
ত্রুটি বার্তা:
Received 405 Response without Allow Header
সম্ভাব্য কারণ:
ব্যাকএন্ড সার্ভার "অনুমতি দিন" শিরোনাম ছাড়াই 405 Method Not Allowed স্ট্যাটাস কোড দিয়ে প্রতিক্রিয়া জানায়।
ব্যাকএন্ড সার্ভার থেকে Apigee Edge-এ HTTP প্রতিক্রিয়া যদি হয় 204 No Content বা 205 Reset Content কিন্তু এতে রেসপন্স বডি এবং/অথবা নিচের এক বা একাধিক শিরোনাম থাকে তাহলে এই ত্রুটি ঘটে:
Apigee Edge-এ HTTP প্রতিক্রিয়ার অংশ হিসাবে ব্যাকএন্ড সার্ভার দ্বারা প্রেরিত সমস্ত প্রতিক্রিয়া শিরোনামের মোট আকার Apigee Edge-এ অনুমোদিত সীমার চেয়ে বেশি হলে এই ত্রুটিটি ঘটে।
Apigee Edge-এ HTTP প্রতিক্রিয়ার অংশ হিসাবে ব্যাকএন্ড সার্ভার দ্বারা প্রেরিত প্রতিক্রিয়া লাইনের আকার Apigee Edge-এ অনুমোদিত সীমার চেয়ে বেশি হলে এই ত্রুটিটি ঘটে।
HTTP প্রতিক্রিয়ার অংশ হিসাবে ব্যাকএন্ড সার্ভার দ্বারা প্রেরিত Content-Encoding শিরোনামটিতে এনকোডিং/পেলোড বিন্যাস থাকে যা Apigee Edge দ্বারা সমর্থিত না হলে এই ত্রুটি ঘটে।
KeyAlias {KeyAlias_name} is not found in Keystore {Keystore_Name}
সম্ভাব্য কারণ:
TargetEndpoint বা TargetServer-এ উল্লেখ করা নির্দিষ্ট KeyAlias নির্দিষ্ট কীস্টোরে না পাওয়া গেলে এই ত্রুটি ঘটে।
ঠিক করুন
TargetEndpoint বা TargetServer-এ নির্দিষ্ট করা KeyAlias বিদ্যমান এবং নির্দিষ্ট কীস্টোরের অংশ কিনা তা নিশ্চিত করুন।
security.util.TrustStoreWithNoCertificates
HTTP স্থিতি কোড:
500 Internal Server Error
ত্রুটি বার্তা:
TrustStore {truststore_name} has no certificates
সম্ভাব্য কারণ:
TargetEndpoint বা TargetServer-এ উল্লেখিত নির্দিষ্ট Truststore-এ কোনো শংসাপত্র না থাকলে এই ত্রুটি ঘটে।
ঠিক করুন
আপনি যদি ব্যাকএন্ড সার্ভারের শংসাপত্র যাচাই করতে চান এবং একটি TargetEndpoint বা TargetServer-এ Truststore ব্যবহার করতে চান, তাহলে নিশ্চিত করুন যে Truststore-এ ব্যাকএন্ড সার্ভারের বৈধ শংসাপত্র রয়েছে৷
[[["সহজে বোঝা যায়","easyToUnderstand","thumb-up"],["আমার সমস্যার সমাধান হয়েছে","solvedMyProblem","thumb-up"],["অন্যান্য","otherUp","thumb-up"]],[["এতে আমার প্রয়োজনীয় তথ্য নেই","missingTheInformationINeed","thumb-down"],["খুব জটিল / অনেক ধাপ","tooComplicatedTooManySteps","thumb-down"],["পুরনো","outOfDate","thumb-down"],["অনুবাদ সংক্রান্ত সমস্যা","translationIssue","thumb-down"],["নমুনা / কোড সংক্রান্ত সমস্যা","samplesCodeIssue","thumb-down"],["অন্যান্য","otherDown","thumb-down"]],["2024-11-18 UTC-তে শেষবার আপডেট করা হয়েছে।"],[],[]]