আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন .info- তে যান।
লক্ষণ
এপিআই কলের প্রতিক্রিয়া হিসেবে ক্লায়েন্ট অ্যাপ্লিকেশনটি 400 Bad Request HTTP স্ট্যাটাস কোড এবং messaging.adaptors.http.flow.DecompressionFailureAtRequest এরর কোডটি পায়।
ত্রুটি বার্তা
ক্লায়েন্ট অ্যাপ্লিকেশনটি নিম্নলিখিত প্রতিক্রিয়া কোডটি পায়:
HTTP/1.1 400 Bad Request
এছাড়াও, আপনি নীচে দেখানোটির মতো একটি ত্রুটি বার্তা দেখতে পারেন:
{
"fault":{
"faultstring":"Decompression failure at request",
"detail":{
"errorcode":"messaging.adaptors.http.flow.DecompressionFailureAtRequest"
}
}
}সম্ভাব্য কারণসমূহ
এই ত্রুটিটি শুধুমাত্র তখনই ঘটে যদি:
- HTTP অনুরোধ হেডার
Content-Encodingএ নির্দিষ্ট করা এনকোডিংটি বৈধ এবং Apigee Edge দ্বারা সমর্থিত । - HTTP অনুরোধের অংশ হিসেবে ক্লায়েন্ট কর্তৃক প্রেরিত পেলোড ফরম্যাটটি
Content-Encodingহেডারে নির্দিষ্ট করা এনকোডিং ফরম্যাটের সাথে মেলে না।
কিন্তু
এর কারণ হলো, Apigee Edge নির্দিষ্ট এনকোডিং ব্যবহার করে পেলোডটি ডিকোড করতে ব্যর্থ হয়, যেহেতু পেলোডের ফরম্যাটটি Content-Encoding হেডারে নির্দিষ্ট করা এনকোডিংয়ের ফরম্যাটের মতো নয়।
এখানে সমর্থিত Content-Encoding মানগুলির কয়েকটি উদাহরণ এবং সেই ক্ষেত্রে Apigee Edge পেলোড ফরম্যাটটি কেমন হবে বলে আশা করে, তা দেওয়া হলো:
| দৃশ্যকল্প | বিষয়বস্তু-এনকোডিং | প্রত্যাশিত পেলোড ফরম্যাট |
|---|---|---|
| একক এনকোডিং | জিজিপ | ইউনিক্স RFC1952 GZIP ফরম্যাট দেখুন। |
| একক এনকোডিং | স্ফীত করা | এই ফরম্যাটটি ডিফ্লেট কম্প্রেশন অ্যালগরিদমের সাথে |
| একাধিক এনকোডিং | একাধিক এনকোডিং উদাহরণস্বরূপ, যখন এনকোডিং দুইবার করা হয়, তখন তা হতে পারে:
| হেডারে প্রদর্শিত ক্রমানুসারে পেলোডের উপর একাধিক এনকোডিং প্রয়োগ করা হয়েছে। |
এই ত্রুটির সম্ভাব্য কারণগুলো নিম্নরূপ:
| কারণ | বর্ণনা | সমস্যা সমাধানের নির্দেশাবলী প্রযোজ্য |
|---|---|---|
| অনুরোধ পেলোড ফরম্যাট Content-Encoding হেডারে নির্দিষ্ট করা এনকোডিংয়ের সাথে মেলে না। | ক্লায়েন্ট কর্তৃক প্রেরিত রিকোয়েস্ট পেলোডের ফরম্যাটটি হয় এনকোড করা নেই অথবা Content-Encoding হেডারে নির্দিষ্ট করা এনকোডিংয়ের সাথে মেলে না। | এজ পাবলিক এবং প্রাইভেট ক্লাউড ব্যবহারকারীরা |
সাধারণ রোগ নির্ণয়ের পদক্ষেপ
এই ত্রুটি নির্ণয় করতে নিম্নলিখিত সরঞ্জাম/কৌশলগুলোর মধ্যে যেকোনো একটি ব্যবহার করুন:
এপিআই মনিটরিং
এপিআই মনিটরিং ব্যবহার করে ত্রুটি নির্ণয় করতে:
- উপযুক্ত ভূমিকা সম্পন্ন একজন ব্যবহারকারী হিসেবে Apigee Edge UI-তে সাইন ইন করুন ।
যে প্রতিষ্ঠানে আপনি বিষয়টি তদন্ত করতে চান, সেখানে যান।

- Analyze > API Monitoring > Investigate পৃষ্ঠায় যান।
- সেই নির্দিষ্ট সময়সীমাটি নির্বাচন করুন যার মধ্যে আপনি ত্রুটিগুলো লক্ষ্য করেছেন।
- নিশ্চিত করুন যে প্রক্সি ফিল্টারটি ‘সকল’ (All) এ সেট করা আছে।
- সময়ের সাপেক্ষে ফল্ট কোডের লেখচিত্র অঙ্কন করুন।
নীচে দেখানো অনুযায়ী, যে সেলটিতে
messaging.adaptors.http.flow.DecompressionFailureAtRequestফল্ট কোডটি রয়েছে, সেটি নির্বাচন করুন:( বড় ছবি দেখুন )

ফল্ট কোড
messaging.adaptors.http.flow.DecompressionFailureAtRequestসম্পর্কিত তথ্য নিচে দেখানো হলো:( বড় ছবি দেখুন )

'View logs'-এ ক্লিক করুন এবং
400এরর-এর কারণে ফেইল হওয়া সারিটি এক্সপ্যান্ড করুন।( বড় ছবি দেখুন )

- লগস উইন্ডো থেকে নিম্নলিখিত বিবরণগুলো নোট করুন:
- স্ট্যাটাস কোড:
400 - ত্রুটির উৎস:
proxy - ত্রুটি কোড:
messaging.adaptors.http.flow.DecompressionFailureAtRequest.
- স্ট্যাটাস কোড:
- যদি ফল্ট সোর্সের মান '
proxyহয়, তাহলে তা নির্দেশ করে যে রিকোয়েস্ট পেলোড ফরম্যাটটিContent-Encodingহেডারে নির্দিষ্ট করা সমর্থিত এনকোডিংয়ের সাথে মেলেনি।
ট্রেস টুল
ট্রেস টুল ব্যবহার করে ত্রুটি নির্ণয় করতে:
- ট্রেস সেশনটি সক্রিয় করুন এবং নিম্নলিখিতগুলির মধ্যে যেকোনো একটি:
-
400 Bad Requestত্রুটিটি ঘটার জন্য অপেক্ষা করুন, অথবা - আপনি যদি সমস্যাটি পুনরায় তৈরি করতে পারেন, তাহলে এপিআই কলটি করুন এবং
400 Bad Requestপুনরায় দেখান।
-
নিশ্চিত করুন যে 'Show all FlowInfos' চালু আছে:

- ব্যর্থ হওয়া অনুরোধগুলোর মধ্যে একটি নির্বাচন করুন এবং ট্রেসটি পরীক্ষা করুন।
- ট্রেসের বিভিন্ন ধাপ অতিক্রম করে ত্রুটিটি কোথায় ঘটেছে তা খুঁজে বের করুন।
সাধারণত, আপনি ফ্লো-এর মধ্যে 'Request Receipt from Client' ফেজের ঠিক পরেই এই ত্রুটিটি খুঁজে পাবেন, যেমনটি নিচে দেখানো হয়েছে:
( বড় ছবি দেখুন )

ট্রেস থেকে প্রপার্টিগুলোর মানগুলো লক্ষ্য করুন:
- ত্রুটি:
Decompression failure at request - error.class :
com.apigee.rest.framework.BadRequestException - ত্রুটির কারণ:
Not in GZIP format
error.cause- এ বলা হয়েছে যে রিকোয়েস্ট পেলোডটি GZIP ফরম্যাটে নেই। এর মানে হলো, Apigee Edge আশা করছিল যে রিকোয়েস্ট পেলোডটি GZIP ফরম্যাটে থাকবে, কারণ
Content-Encodingহেডারে তা উল্লেখ করা থাকত।- ত্রুটি:
রিকোয়েস্ট হেডার
Content-Encodingএর মান নির্ধারণ করুন। এর জন্য, নিচে দেখানো অনুযায়ী 'Request Received from Client' ধাপে যান:( বড় ছবি দেখুন )

উল্লেখ্য যে, রিকোয়েস্ট হেডার
Content-Encodingএর মান প্রকৃতপক্ষেgzip।উপরের নমুনা ট্রেস থেকে দেখা যায় যে, রিকোয়েস্ট হেডার
Content-Encodingএ নির্দিষ্ট করা এনকোডিং হলোgzip; কিন্তু রিকোয়েস্ট পেলোডটি GZIP ফরম্যাটে নেই। তাই, Apigee gzip ব্যবহার করে পেলোডটি ডিকম্প্রেস করতে পারছে না এবংDecompression failure at requestত্রুটিটি দেখাচ্ছে।- Apigee Edge দ্বারা ফেরত আসা স্ট্যাটাস কোড এবং ত্রুটির বার্তাটি নোট করুন।
ট্রেস-এর 'Response Sent to Client' পর্যায়ে, যা নিচে দেখানো হয়েছে:
( বড় ছবি দেখুন )

ট্রেস থেকে নিম্নলিখিত বিবরণগুলো লক্ষ্য করুন:
- স্ট্যাটাস কোড:
400 Bad Request। - ত্রুটির বিবরণ:
{"fault":{"faultstring":"Decompression failure at request","detail":{"errorcode":"messaging.adaptors.http.flow.DecompressionFailureAtRequest"}}}
- স্ট্যাটাস কোড:
ট্রেসটিতে থাকা AX (অ্যানালিটিক্স ডেটা রেকর্ড করা হয়েছে) পর্যায়ে যান এবং এটিতে ক্লিক করুন।
- Phase Details , Error Headers সেকশনে স্ক্রল ডাউন করুন এবং নিচে দেখানো অনুযায়ী X-Apigee-fault-code এবং X-Apigee-fault-source- এর মান নির্ধারণ করুন:
( বড় ছবি দেখুন )

- আপনি X-Apigee-fault-code এবং X-Apigee-fault-source- এর মান
messaging.adaptors.http.flow.DecompressionFailureAtRequestএবংpolicyহিসেবে দেখতে পাবেন, যা নির্দেশ করে যে অনুরোধের পেলোড ফরম্যাটটিContent-Encodingহেডারে নির্দিষ্ট করা এনকোডিংয়ের সাথে মেলেনি।প্রতিক্রিয়া হেডার মূল্য এক্স-এপিজি-ফল্ট-কোড messaging.adaptors.http.flow.DecompressionFailureAtRequestএক্স-এপিজি-ফল্ট-সোর্স policy
এনজিআইএনএক্স
NGINX অ্যাক্সেস লগ ব্যবহার করে ত্রুটি নির্ণয় করতে:
- আপনি যদি একজন প্রাইভেট ক্লাউড ব্যবহারকারী হন, তাহলে HTTP
400ত্রুটি সম্পর্কিত মূল তথ্য নির্ধারণ করতে NGINX অ্যাক্সেস লগ ব্যবহার করতে পারেন। NGINX অ্যাক্সেস লগগুলি পরীক্ষা করুন:
/opt/apigee/var/log/edge-router/nginx/ ORG ~ ENV . PORT# _access_logযেখানে: ORG , ENV , এবং PORT# প্রকৃত মান দ্বারা প্রতিস্থাপিত হয়।
- একটি নির্দিষ্ট সময়কালে কোনো
400এরর ছিল কিনা (যদি সমস্যাটি অতীতে ঘটে থাকে) অথবা এখনও কোনো রিকোয়েস্ট400এর কারণে ফেইল করছে কিনা, তা খুঁজে দেখুন। যদি আপনি
messaging.adaptors.http.flow.DecompressionFailureAtRequestএর মানের সাথে মিলে যাওয়া X-Apigee-fault-code সহ কোনো400এরর খুঁজে পান, তাহলে X-Apigee-fault-source-এর মান নির্ধারণ করুন।NGINX অ্যাক্সেস লগ থেকে প্রাপ্ত একটি নমুনা 400 এরর:

NGINX অ্যাক্সেস লগ থেকে নেওয়া উপরের নমুনা এন্ট্রিটিতে X-Apigee-fault-code এবং X-Apigee-fault-source-এর জন্য নিম্নলিখিত মানগুলি রয়েছে:
প্রতিক্রিয়া হেডার মূল্য এক্স-এপিজি-ফল্ট-কোড messaging.adaptors.http.flow.DecompressionFailureAtRequestএক্স-এপিজি-ফল্ট-সোর্স policy
কারণ: অনুরোধ পেলোড ফরম্যাটটি Content-Encoding হেডারে নির্দিষ্ট করা এনকোডিংয়ের সাথে মেলে না।
ডিফল্টরূপে, যদি রিকোয়েস্ট হেডার Content-Encoding একটি বৈধ এবং সমর্থিত এনকোডিং থাকে, তাহলে Apigee Edge সর্বদা পেলোডটি ডিকম্প্রেস করে। অতএব, আশা করা হয় যে রিকোয়েস্ট পেলোডের ফরম্যাটটি রিকোয়েস্ট হেডার Content-Encoding এ নির্দিষ্ট করা এনকোডিংয়ের সাথে মিলবে । যদি কোনো অমিল থাকে, তাহলে আপনি এই এররটি পাবেন।
রোগ নির্ণয়
- সাধারণ রোগ নির্ণয়ের ধাপগুলিতে ব্যাখ্যা করা অনুযায়ী API মনিটরিং, ট্রেস টুল বা NGINX অ্যাক্সেস লগ ব্যবহার করে পরিলক্ষিত ত্রুটির জন্য ফল্ট কোড এবং ফল্ট সোর্স নির্ধারণ করুন।
- যদি ফল্ট কোডটি
messaging.adaptors.http.flow.DecompressionFailureAtRequestহয় এবং ফল্ট সোর্সের মানpolicyবাproxyহয়, তাহলে এটি নির্দেশ করে যে ক্লায়েন্ট অ্যাপ্লিকেশন দ্বারা প্রেরিত অনুরোধের পেলোডটি অনুরোধ হেডারContent-Encodingএ নির্দিষ্ট করা সমর্থিত এনকোডিংয়ের সাথে মেলে না। আপনি HTTP অনুরোধের অংশ হিসেবে নিম্নলিখিত পদ্ধতিগুলোর যেকোনো একটি ব্যবহার করে অমিলটি নির্ধারণ করতে পারেন:
ত্রুটি বার্তা
ত্রুটির বার্তা ব্যবহার করে যাচাই করতে:
আপনার কাছে যদি Apigee Edge থেকে প্রাপ্ত সম্পূর্ণ এরর মেসেজটি থাকে, তাহলে
faultstringটি দেখুন।নমুনা ত্রুটি বার্তা:
"faultstring":"Decompression failure at request"
- উপরের ত্রুটি বার্তায়
"Decompression failure at request"প্রদর্শিত হচ্ছে, যার অর্থ হলোContent-Encodingহেডারে নির্দিষ্ট করা এনকোডিং ব্যবহার করে অনুরোধটি ডিকম্প্রেস করা যায়নি।
ট্রেস
ট্রেস ব্যবহার করে যাচাই করতে:
- সাধারণ রোগ নির্ণয়ের ধাপগুলিতে যেমন ব্যাখ্যা করা হয়েছে, সেই অনুযায়ী Trace ব্যবহার করে রিকোয়েস্ট হেডার Content-Encoding এবং error.cause প্রপার্টির মান নির্ধারণ করুন।
স্যাম্পল ট্রেস থেকে প্রাপ্ত মানগুলো নিম্নরূপ:
- কন্টেন্ট-এনকোডিং:
gzip - ত্রুটির কারণ:
Not in GZIP format
রিকোয়েস্ট হেডারের Content-Encoding- এর মান gzip ; কিন্তু রিকোয়েস্ট পেলোডটি GZIP ফরম্যাটে নেই (যেমনটি error.cause দ্বারা নির্দেশিত)। তাই, Apigee Edge
400 Bad Requestএবংmessaging.adaptors.http.flow.DecompressionFailureAtRequestএরর কোড দিয়ে সাড়া দেয়।- কন্টেন্ট-এনকোডিং:
প্রকৃত অনুরোধ
প্রকৃত অনুরোধ ব্যবহার করে যাচাই করতে:
ক্লায়েন্ট অ্যাপ্লিকেশন দ্বারা করা প্রকৃত অনুরোধটি যদি আপনার কাছে থাকে, তাহলে নিম্নলিখিত পদক্ষেপগুলি অনুসরণ করুন:
- রিকোয়েস্ট হেডার
Content-Encodingএ পাঠানো মানটি নির্ধারণ করুন। - অনুরোধের অংশ হিসেবে পাঠানো পেলোডের ফরম্যাট নির্ধারণ করুন।
যদি
Content-Encodingহেডারের মান সমর্থিত এনকোডিংয়ের তালিকায় থাকে, কিন্তু রিকোয়েস্ট পেলোডের ফরম্যাটContent-Encodingহেডারে নির্দিষ্ট করা এনকোডিংয়ের সাথে না মেলে, তাহলে সেটাই সমস্যার কারণ।নমুনা অনুরোধ:
curl -v "http://HOSTALIAS/v1/testgzip"
-H "Content-Encoding: gzip"-X POST -d @request_payload.zipউপরের নমুনা অনুরোধটি
Content-Encodingহেডারেgzipভ্যালুটি পাঠায়, যা Apigee Edge-এ একটি সমর্থিত এনকোডিং । কিন্তু, অনুরোধের পেলোডrequest_payload.zipটি ZIP ফরম্যাটে রয়েছে। ফলে, এই অনুরোধটি400 Bad Requestস্ট্যাটাস কোড এবংmessaging.adaptors.http.flow.DecompressionFailureAtRequestএরর কোড সহ ব্যর্থ হয়।
মেসেজ প্রসেসর লগ
মেসেজ প্রসেসর লগ ব্যবহার করে যাচাই করতে:
আপনি যদি একজন প্রাইভেট ক্লাউড ব্যবহারকারী হন, তাহলে HTTP
400ত্রুটি সম্পর্কিত মূল তথ্য নির্ধারণ করতে মেসেজ প্রসেসর লগ ব্যবহার করতে পারেন।- সাধারণ রোগ নির্ণয়ের ধাপগুলিতে যেমন ব্যাখ্যা করা হয়েছে, সেই অনুযায়ী এপিআই মনিটরিং, ট্রেস টুল বা এনজিআইএনএক্স অ্যাক্সেস লগ ব্যবহার করে ব্যর্থ হওয়া অনুরোধটির মেসেজ আইডি নির্ধারণ করুন।
মেসেজ প্রসেসর লগে মেসেজ আইডিটি অনুসন্ধান করুন:
/opt/apigee/var/log/edge-message-processor/logs/system.logআপনি নিম্নলিখিত ব্যতিক্রমগুলির মধ্যে একটি দেখতে পাবেন:
দৃশ্যকল্প #১
দৃশ্যকল্প #১: যখন এপিআই অনুরোধের হেডারে Content-Encoding: gzip থাকে
2021-07-28 10:21:16,861 NIOThread@0 ERROR HTTP.SERVER - HTTPServer$Context.onInputException() : Message id:rt-57-1 SSLClientChannel[Accepted: Remote:192.168.199.8:8443 Local:192.168.80.234:44284]@28469 useCount=1 bytesRead=0 bytesWritten=28764 age=2739893ms lastIO=0ms isOpen=true.onExceptionRead exception: {} java.util.zip.ZipException: Not in GZIP format 2021-07-28 10:21:16,862 NIOThread@0 ERROR ADAPTORS.HTTP.FLOW - AbstractRequestListener.onException() : Request:POST, uri:/test, message Id:rt-57-1, exception:java.util.zip.ZipException: Not in GZIP format, context:Context@71ea5ac input=ClientInputChannel(SSLClientChannel[Accepted: Remote:192.168.199.8:8443 Local:192.168.80.234:44284]@28469 useCount=1 bytesRead=0 bytesWritten=28764 age=2739894ms lastIO=0ms isOpen=true) 2021-07-28 10:21:16,862 NIOThread@0 INFO HTTP.SERVICE - ExceptionHandler.handleException() : Exceptionjava.util.zip.ZipException: Not in GZIP formatoccurred while writing to channel null 2021-07-28 10:21:16,863 NIOThread@0 INFO HTTP.SERVICE - ExceptionHandler.handleException() : Exception trace: java.util.zip.ZipException: Not in GZIP formatউপরের এরর মেসেজে থাকা
java.util.zip.ZipException: Not in GZIP formatলাইনটি নির্দেশ করে যে,Content-Encodingহিসেবে gzip নির্দিষ্ট করা সত্ত্বেও রিকোয়েস্ট পেলোডটি GZIP ফরম্যাটে পাঠানো হয়নি। তাই, Apigee Edge এক্সেপশনটি থ্রো করে এবং ক্লায়েন্ট অ্যাপ্লিকেশনগুলোতেmessaging.adaptors.http.flow.DecompressionFailureAtRequestফল্ট কোডসহ একটি400স্ট্যাটাস কোড রিটার্ন করে।দৃশ্যকল্প #২
দৃশ্যকল্প #২: যখন এপিআই অনুরোধের হেডারে Content-Encoding: deflate থাকে
2021-07-28 15:26:31,893 NIOThread@1 ERROR HTTP.SERVER - HTTPServer$Context.onInputException() : Message id:rt-47875-1 SSLClientChannel[Accepted: Remote:192.168.199.8:8443 Local:192.168.81.72:45954]@29276 useCount=1 bytesRead=0 bytesWritten=37230 age=3498856ms lastIO=1ms isOpen=true.onExceptionRead exception: {}java.util.zip.ZipException: incorrect header check….Caused by: java.util.zip.DataFormatException: incorrect header check.. 2021-07-28 15:26:31,894 NIOThread@1 ERROR ADAPTORS.HTTP.FLOW - AbstractRequestListener.onException() : Request:POST, uri:/test, message Id:rrt-47875-1, exception:java.util.zip.ZipException: incorrect header check, context:Context@69b3ac45 input=ClientInputChannel(SSLClientChannel[Accepted: Remote:192.168.199.8:8443 Local:192.168.81.72:45954]@29276 useCount=1 byt esRead=0 bytesWritten=37230 age=3498856ms lastIO=1ms isOpen=true)উপরের এরর মেসেজে থাকা
java.util.zip.ZipException: incorrect header checkএবংCaused by: java.util.zip.DataFormatException: incorrect header checkলাইনগুলো নির্দেশ করে যে, রিকোয়েস্ট পেলোডটি ডিফ্লেট ফরম্যাটে পাঠানো হয়নি এবং এটি ডিফ্লেটেরContent-Encodingহেডারে নির্দিষ্ট করা এনকোডিংয়ের সাথে মেলে না। তাই, Apigee Edge এক্সেপশনটি থ্রো করে এবং ক্লায়েন্ট অ্যাপ্লিকেশনগুলোতেmessaging.adaptors.http.flow.DecompressionFailureAtRequestফল্ট কোডসহ একটি400স্ট্যাটাস কোড রিটার্ন করে।
সমাধান
- Apigee Edge-এর API প্রক্সি ফ্লো এবং ব্যাকএন্ড সার্ভারে যদি কম্প্রেসড রিকোয়েস্ট পেলোডের প্রয়োজন না থাকে, তাহলে
Content-Encodingহেডারটি পাস করবেন না । যদি রিকোয়েস্ট পেলোড কম্প্রেস করার প্রয়োজন হয়, তাহলে ধাপ ২-এ যান। - নিশ্চিত করুন যে ক্লায়েন্ট অ্যাপ্লিকেশনটি সর্বদা নিম্নলিখিতগুলি পাঠায়:
- অনুরোধে
Content-Encodingহেডারের মান হিসাবে যেকোনো সমর্থিত এনকোডিং ব্যবহার করা যাবে। - Apigee Edge-এ পাঠানো অনুরোধের পেলোডটি সমর্থিত ফরম্যাটে
Content-Encodingহেডারে নির্দিষ্ট করা এনকোডিং ফরম্যাটের সাথে মেলে।
- অনুরোধে
- উপরে আলোচিত উদাহরণে, রিকোয়েস্ট পেলোডটি ZIP ফরম্যাটে আছে, কিন্তু রিকোয়েস্ট হেডারে
Content-Encoding: gzipউল্লেখ করা আছে। আপনি রিকোয়েস্ট হেডারটিContent-Encoding: gzipহিসেবে এবং রিকোয়েস্ট পেলোডটিওgzipফরম্যাটে পাঠিয়ে সমস্যাটি সমাধান করতে পারেন:curl -v "https://HOSTALIAS/v1/testgzip" -H "Content-Encoding: gzip" -X POST -d @request_payload.gz
স্পেসিফিকেশন
নিম্নলিখিত RFC স্পেসিফিকেশন অনুসারে, Apigee Edge 400 Bad Request স্ট্যাটাস কোড এবং messaging.adaptors.http.flow.DecompressionFailureAtRequest এরর কোড দিয়ে সাড়া দেয়:
| স্পেসিফিকেশন |
|---|
| আরএফসি ৭২৩১, ধারা ৬.৫.১ |
| আরএফসি ৭২৩১, ধারা ৩.১.২.২ |
আপনার যদি এখনও Apigee Support-এর কাছ থেকে কোনো সাহায্যের প্রয়োজন হয়, তাহলে Must gather diagnostic information- এ যান।
রোগ নির্ণয়ের তথ্য অবশ্যই সংগ্রহ করতে হবে
নিম্নলিখিত ডায়াগনস্টিক তথ্য সংগ্রহ করুন, এবং তারপর Apigee Edge Support-এর সাথে যোগাযোগ করুন:
আপনি যদি পাবলিক ক্লাউড ব্যবহারকারী হন, তাহলে নিম্নলিখিত তথ্যগুলো প্রদান করুন:
- সংস্থার নাম
- পরিবেশের নাম
- এপিআই প্রক্সি নাম
-
400ত্রুটিটি পুনরুৎপাদন করতে ব্যবহৃত সম্পূর্ণcurlকমান্ড। - এপিআই অনুরোধগুলির ট্রেস ফাইল
আপনি যদি একজন প্রাইভেট ক্লাউড ব্যবহারকারী হন, তাহলে নিম্নলিখিত তথ্যগুলো প্রদান করুন:
- ব্যর্থ অনুরোধগুলির জন্য সম্পূর্ণ ত্রুটি বার্তা পরিলক্ষিত হয়েছে।
- পরিবেশের নাম
- এপিআই প্রক্সি বান্ডেল
- এপিআই অনুরোধগুলির ট্রেস ফাইল
NGINX অ্যাক্সেস লগ
/opt/apigee/var/log/edge-router/nginx/ ORG ~ ENV . PORT# _access_logযেখানে: ORG , ENV এবং PORT# প্রকৃত মান দ্বারা প্রতিস্থাপিত হয়।
- মেসেজ প্রসেসর সিস্টেম লগ
/opt/apigee/var/log/edge-message-processor/logs/system.log