আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান । তথ্য
উপসর্গ
ক্লায়েন্ট অ্যাপ্লিকেশনটি API কলগুলির প্রতিক্রিয়া হিসাবে ত্রুটি কোড messaging.adaptors.http.flow.DecompressionFailureAtResponse
সহ 502 Bad Gateway
একটি HTTP স্ট্যাটাস কোড পায়।
ত্রুটি বার্তা
ক্লায়েন্ট অ্যাপ্লিকেশন নিম্নলিখিত প্রতিক্রিয়া কোড পায়:
HTTP/1.1 502 Bad Gateway
উপরন্তু, আপনি নীচে দেখানো একটির মত একটি ত্রুটি বার্তা পর্যবেক্ষণ করতে পারেন:
{ "fault":{ "faultstring":"Decompression failure at response", "detail":{ "errorcode":"messaging.adaptors.http.flow.DecompressionFailureAtResponse" } } }
সম্ভাব্য কারণ
এই ত্রুটিটি ঘটে শুধুমাত্র যদি:
- HTTP প্রতিক্রিয়া (ব্যাকএন্ড/টার্গেট সার্ভার থেকে) শিরোনামে নির্দিষ্ট এনকোডিং
Content-Encoding
বৈধ এবং Apigee এজ দ্বারা সমর্থিত , - HTTP প্রতিক্রিয়ার অংশ হিসাবে ব্যাকএন্ড/টার্গেট সার্ভার দ্বারা পাঠানো পেলোড বিন্যাস
Content-Encoding
শিরোনামে নির্দিষ্ট করা এনকোডিং বিন্যাসের সাথে মেলে না
কিন্তু
এর কারণ হল Apigee Edge নির্দিষ্ট এনকোডিং ব্যবহার করে পেলোড ডিকোড করতে ব্যর্থ হয় যেহেতু পেলোডের বিন্যাসটি Content-Encoding
শিরোনামে উল্লেখ করা এনকোডিংয়ের মতো একই বিন্যাসে নয়।
এখানে সমর্থিত Content-Encoding
মানগুলির কয়েকটি উদাহরণ এবং কীভাবে অ্যাপিজি এজ সেই ক্ষেত্রে পেলোড উপস্থাপনা আশা করে:
দৃশ্যকল্প | বিষয়বস্তু-এনকোডিং | পেলোড উপস্থাপনা |
---|---|---|
একক এনকোডিং | জিজিপ | ইউনিক্স RFC1952 GZIP ফরম্যাট দেখুন। |
একক এনকোডিং | ডিফ্লেট | এই বিন্যাসটি ডিফ্লেট কম্প্রেশন অ্যালগরিদম সহ |
একাধিক এনকোডিং | একাধিক এনকোডিং উদাহরণস্বরূপ, যখন এনকোডিং দুইবার করা হয়, এটি হতে পারে:
| প্রদত্ত ক্রমানুসারে পেলোডে একাধিক এনকোডিং প্রয়োগ করা হয়েছে যেমনটি হেডারে প্রদর্শিত হয়৷ |
এই ত্রুটির সম্ভাব্য কারণগুলি নিম্নরূপ:
কারণ | বর্ণনা | সমস্যা সমাধানের নির্দেশাবলী প্রযোজ্য |
---|---|---|
প্রতিক্রিয়া পেলোড ফর্ম্যাট সামগ্রী-এনকোডিংয়ের সাথে মেলে না৷ | ব্যাকএন্ড/টার্গেট সার্ভার দ্বারা প্রেরিত প্রতিক্রিয়া পেলোডের বিন্যাসটি হয় এনকোড করা হয়নি বা Content-Encoding শিরোনামে নির্দিষ্ট এনকোডিংয়ের সাথে মেলে না। | এজ পাবলিক এবং প্রাইভেট ক্লাউড ব্যবহারকারীরা |
সাধারণ রোগ নির্ণয়ের পদক্ষেপ
এই ত্রুটি নির্ণয় করতে নিম্নলিখিত সরঞ্জাম/কৌশলগুলির মধ্যে একটি ব্যবহার করুন:
API মনিটরিং
API মনিটরিং ব্যবহার করে ত্রুটি নির্ণয় করতে:
- Apigee Edge UI এ একটি উপযুক্ত ভূমিকা সহ ব্যবহারকারী হিসাবে সাইন ইন করুন৷
আপনি যে সংস্থায় সমস্যাটি তদন্ত করতে চান সেখানে যান।
- এনালাইজ > API মনিটরিং > ইনভেস্টিগেট পেজে নেভিগেট করুন।
- নির্দিষ্ট সময়সীমা নির্বাচন করুন যেখানে আপনি ত্রুটিগুলি পর্যবেক্ষণ করেছেন।
- প্রক্সি ফিল্টারটি সকলে সেট করা আছে তা নিশ্চিত করুন।
- সময়ের বিরুদ্ধে প্লট ফল্ট কোড ।
একটি সেল নির্বাচন করুন যার ফল্ট কোড আছে
messaging.adaptors.http.flow.DecompressionFailureAtResponse
নীচে দেখানো হয়েছে:( বড় ছবি দেখুন )
ফল্ট কোড
messaging.adaptors.http.flow.DecompressionFailureAtResponse
সম্পর্কে তথ্য নীচে দেখানো হয়েছে:( বড় ছবি দেখুন )
লগ দেখুন ক্লিক করুন এবং
502
ত্রুটির সাথে ব্যর্থ হওয়া সারিটি প্রসারিত করুন।( বড় ছবি দেখুন )
- লগ উইন্ডো থেকে, নিম্নলিখিত বিবরণ নোট করুন:
- স্ট্যাটাস কোড:
502
- ফল্ট উত্স:
target
- ফল্ট কোড:
messaging.adaptors.http.flow.DecompressionFailureAtResponse
।
- স্ট্যাটাস কোড:
- যদি ফল্ট সোর্সের মান
target
থাকে, তাহলে এটি নির্দেশ করে যে প্রতিক্রিয়া পেলোড বিন্যাসটি ব্যাকএন্ড সার্ভারের প্রতিক্রিয়া শিরোনামে নির্দিষ্ট সমর্থিত এনকোডিংয়ের সাথে মেলেনিContent-Encoding
.
ট্রেস টুল
ট্রেস টুল ব্যবহার করে ত্রুটি নির্ণয় করতে:
- ট্রেস সেশন সক্ষম করুন এবং হয়:
-
502 Bad Gateway
ত্রুটি ঘটতে অপেক্ষা করুন, বা - আপনি যদি সমস্যাটি পুনরুত্পাদন করতে পারেন, API কল করুন এবং
502 Bad Gateway
পুনরুত্পাদন করুন।
-
সমস্ত ফ্লোইনফোস সক্ষম করা আছে তা নিশ্চিত করুন:
- ব্যর্থ প্রতিক্রিয়াগুলির একটি নির্বাচন করুন এবং ট্রেস পরীক্ষা করুন।
- ট্রেসের বিভিন্ন পর্যায়ে নেভিগেট করুন এবং কোথায় ব্যর্থতা ঘটেছে তা সনাক্ত করুন।
আপনি সাধারণত লক্ষ্য সার্ভার ফেজ থেকে প্রতিক্রিয়া প্রাপ্তির ঠিক পরে একটি ফ্লোতে ত্রুটি খুঁজে পাবেন যেমন নীচে দেখানো হয়েছে:
( বড় ছবি দেখুন )
ট্রেস থেকে বৈশিষ্ট্যের মান নোট করুন:
- বিষয়বস্তু-এনকোডিং:
gzip
- প্রতিক্রিয়া বিষয়বস্তুর অংশ:
{"fault":{"faultstring":"Decompression failure at response","detail":{"errorcode":"messaging.adaptors.http.flow.DecompressionFailureAtResponse"}}}
- বিষয়বস্তু-এনকোডিং:
টার্গেট সার্ভার ফেজ থেকে প্রাপ্ত প্রতিক্রিয়ার ঠিক পরে ত্রুটি পর্যায়ে নেভিগেট করুন:
( বড় ছবি দেখুন )
বৈশিষ্ট্যগুলি নোট করুন:
- ত্রুটি:
Decompression failure at response
- error.class:
com.apigee.errors.http.server.BadGateway
error.cause:
Not in GZIP format
error.cause বলে যে প্রতিক্রিয়া পেলোড GZIP ফর্ম্যাটে নয়। এর মানে হল যে Apigee Edge আশা করছিল রেসপন্স পেলোড GZIP ফরম্যাটে হবে যেমনটি
Content-Encoding
হেডারে উল্লেখ করা হয়েছে (আগের ধাপে নির্ধারিত হয়েছে)। তাই, Apigee Edge gzip ব্যবহার করে পেলোড ডিকম্প্রেস করতে পারে না এবংDecompression failure at response
ফিরিয়ে দেয়।
লক্ষ্য করুন যে লক্ষ্য/ব্যাকএন্ড সার্ভার থেকে প্রতিক্রিয়া এই ক্ষেত্রে
200
; যাইহোক, ক্লায়েন্ট অ্যাপ্লিকেশনটি একটি502
প্রতিক্রিয়া পাবে কারণ Apigee Edge দ্বারা ত্রুটিটি ফেরত দেওয়া হয়েছে।- ত্রুটি:
ট্রেসে ক্লায়েন্টের কাছে পাঠানো প্রতিক্রিয়াতে নেভিগেট করুন এবং এটিতে ক্লিক করুন।
( বড় ছবি দেখুন )
ট্রেস থেকে নিম্নলিখিত বিবরণ নোট করুন:
- স্ট্যাটাস কোড:
502 Bad Gateway
। - ত্রুটি বিষয়বস্তু:
{"fault":{"faultstring":"Decompression failure at response","detail":{"errorcode":"messaging.adaptors.http.flow.DecompressionFailureAtResponse"}}}
- স্ট্যাটাস কোড:
ট্রেসে AX (Analytics Data Recorded) পর্বে নেভিগেট করুন এবং এটিতে ক্লিক করুন।
- ফেজ বিশদ বিবরণ , ত্রুটি শিরোনাম বিভাগে স্ক্রোল করুন এবং নীচে দেখানো হিসাবে X-Apigee-fault-code এবং X-Apigee-fault-source এর মান নির্ধারণ করুন:
( বড় ছবি দেখুন )
- আপনি
messaging.adaptors.http.flow.DecompressionFailureAtResponse
এবংtarget
হিসাবে X-Apigee-fault-code এবং X-Apigee-ফল্ট-সোর্সের মান দেখতে পাবেন, যা নির্দেশ করে যে প্রতিক্রিয়া পেলোড বিন্যাসContent-Encoding
তে নির্দিষ্ট করা এনকোডিংয়ের সাথে মেলেনি।Content-Encoding
হেডার।প্রতিক্রিয়া শিরোনাম মান এক্স-অ্যাপিজি-ফল্ট-কোড messaging.adaptors.http.flow.DecompressionFailureAtResponse
এক্স-অ্যাপিজি-ফল্ট-উৎস target
এনজিআইএনএক্স
NGINX অ্যাক্সেস লগ ব্যবহার করে ত্রুটি নির্ণয় করতে:
- আপনি যদি একজন ব্যক্তিগত ক্লাউড ব্যবহারকারী হন, তাহলে আপনি HTTP
502
ত্রুটি সম্পর্কে মূল তথ্য নির্ধারণ করতে NGINX অ্যাক্সেস লগ ব্যবহার করতে পারেন। NGINX অ্যাক্সেস লগগুলি পরীক্ষা করুন:
/opt/apigee/var/log/edge-router/nginx/ ORG ~ ENV . PORT# _access_log
যেখানে: ORG , ENV , এবং PORT# প্রকৃত মান দিয়ে প্রতিস্থাপিত হয়৷
- একটি নির্দিষ্ট সময়কালের মধ্যে (যদি সমস্যাটি অতীতে ঘটে থাকে) কোন
502
ত্রুটি আছে কিনা বা502
সাথে কোন প্রতিক্রিয়া এখনও ব্যর্থ হয়েছে কিনা তা দেখতে অনুসন্ধান করুন। আপনি যদি
messaging.adaptors.http.flow.DecompressionFailureAtResponse
এর মানটির সাথে X-Apigee-failureAtResponse- এর মান মিলে502
ত্রুটি খুঁজে পান, তাহলে X-Apigee-ফল্ট-সোর্সের মান নির্ধারণ করুন।NGINX অ্যাক্সেস লগ থেকে নমুনা 502 ত্রুটি:
NGINX অ্যাক্সেস লগ থেকে উপরের নমুনা এন্ট্রিতে X-Apigee-fault-code এবং X-Apigee-fault-source এর জন্য নিম্নলিখিত মান রয়েছে:
প্রতিক্রিয়া শিরোনাম মান এক্স-অ্যাপিজি-ফল্ট-কোড messaging.adaptors.http.flow.DecompressionFailureAtResponse
এক্স-অ্যাপিজি-ফল্ট-উৎস target
কারণ: প্রতিক্রিয়া পেলোড বিন্যাস সামগ্রী-এনকোডিংয়ের সাথে মেলে না
ডিফল্টরূপে, Apigee Edge সবসময় পেলোড ডিকম্প্রেস করে যদি রেসপন্স হেডার Content-Encoding
একটি বৈধ এবং একটি সমর্থিত এনকোডিং থাকে। অতএব, এটি প্রত্যাশিত যে প্রতিক্রিয়া পেলোডের বিন্যাস প্রতিক্রিয়া শিরোনাম Content-Encoding
এ উল্লিখিত এনকোডিংয়ের সাথে মেলে । যদি একটি অমিল হয়, তাহলে আপনি এই ত্রুটি পেতে.
রোগ নির্ণয়
- এপিআই মনিটরিং, ট্রেস টুল, বা এনজিআইএনএক্স অ্যাক্সেস লগ ব্যবহার করে দেখা ত্রুটির জন্য ফল্ট কোড এবং ফল্ট সোর্স নির্ণয় করুন যা সাধারণ নির্ণয়ের ধাপে ব্যাখ্যা করা হয়েছে।
- যদি ফল্ট কোডটি
messaging.adaptors.http.flow.DecompressionFailureAtResponse
হয় এবং ফল্ট সোর্সের মানtarget
থাকে, তাহলে এটি নির্দেশ করে যে ব্যাকএন্ড/টার্গেট সার্ভার দ্বারা প্রেরিত প্রতিক্রিয়া পেলোডের বিন্যাস প্রতিক্রিয়াতে নির্দিষ্ট করা সমর্থিত এনকোডিংয়ের সাথে মেলে না হেডারContent-Encoding
। আপনি নিম্নলিখিত পদ্ধতিগুলির মধ্যে একটি ব্যবহার করে HTTP প্রতিক্রিয়ার অংশ হিসাবে অমিল নির্ধারণ করতে পারেন:
ত্রুটি বার্তা
ত্রুটি বার্তা ব্যবহার করে যাচাই করতে:
Apigee Edge থেকে প্রাপ্ত সম্পূর্ণ ত্রুটির বার্তায় আপনার অ্যাক্সেস থাকলে,
faultstring
পড়ুন।নমুনা ত্রুটি বার্তা:
"faultstring":"Decompression failure at response"
- উপরের ত্রুটি বার্তায়, এটি
"Decompression failure at response"
প্রদর্শন করে যা বোঝায় যে প্রতিক্রিয়াটিContent-Encoding
শিরোনামে নির্দিষ্ট করা এনকোডিং ব্যবহার করে ডিকম্প্রেস করা যায়নি।
ট্রেস
ট্রেস ব্যবহার করে যাচাই করতে:
- সাধারণ রোগ নির্ণয়ের ধাপে যেমন ব্যাখ্যা করা হয়েছে ট্রেস ব্যবহার করে বিষয়বস্তুর ধরন এবং error.cause নির্ধারণ করুন।
নমুনা ট্রেস থেকে মান নিম্নরূপ:
- বিষয়বস্তু-এনকোডিং:
gzip
- error.cause:
Not in GZIP format
রেসপন্স হেডার কন্টেন্ট-এনকোডিং- এর মান হল gzip ; যাইহোক, প্রতিক্রিয়া পেলোড GZIP বিন্যাসে নয় (যেমন error.cause দ্বারা নির্দেশিত)। অতএব, Apigee Edge
502 Bad Gateway
এবং ত্রুটি কোডmessaging.adaptors.http.flow.DecompressionFailureAtResponse
দিয়ে প্রতিক্রিয়া জানায়।- বিষয়বস্তু-এনকোডিং:
প্রকৃত অনুরোধ
প্রকৃত অনুরোধ ব্যবহার করে যাচাই করতে:
আপনার যদি টার্গেট/ব্যাকএন্ড সার্ভার অ্যাপ্লিকেশনে করা প্রকৃত অনুরোধে অ্যাক্সেস থাকে, তাহলে নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করুন:
- আপনি যদি একজন পাবলিক ক্লাউড/প্রাইভেট ক্লাউড ব্যবহারকারী হন, তাহলে ব্যাকএন্ড সার্ভার থেকে সরাসরি ব্যাকএন্ড সার্ভারে বা অন্য কোনো মেশিন থেকে অনুরোধ করুন যেখান থেকে আপনাকে ব্যাকএন্ড সার্ভারে অনুরোধ করার অনুমতি দেওয়া হয়েছে।
- আপনি যদি একজন ব্যক্তিগত ক্লাউড ব্যবহারকারী হন তবে আপনি বার্তা প্রসেসরগুলির একটি থেকে ব্যাকএন্ড সার্ভারে অনুরোধও করতে পারেন।
- ব্যাকএন্ড সার্ভার দ্বারা প্রেরিত প্রতিক্রিয়া পরীক্ষা করুন এবং প্রতিক্রিয়া শিরোনাম
Content-Encoding.
- অনুরোধের অংশ হিসাবে পাঠানো পেলোডের বিন্যাস নির্ধারণ করুন।
- যদি
Content-Encoding
হেডারের মান সমর্থিত এনকোডিংয়ের তালিকায় থাকে কিন্তু রেসপন্স পেলোডের ফর্ম্যাটContent-Encoding
হেডারে উল্লেখিত এনকোডিংয়ের সাথে মেলে না, তাহলে সেটাই সমস্যার কারণ।নমুনা:
curl -v https://HOSTALIAS/test
***trimmed*** > < HTTP/1.1 200 OK < Accept-Ranges: bytes <
Content-Encoding: gzip
< Date: Mon, 02 Aug 2021 08:17:35 GMT < Transfer-Encoding: chunked < < response_payload.zip Response Body(not in GZIP format)>উপরের নমুনা প্রতিক্রিয়াটি
Content-Encoding
হেডারে মানgzip
পাঠায় যা Apigee এজ-এ একটি সমর্থিত এনকোডিং । যাইহোক,response_payload.zip
একটি জিপ ফাইল হিসাবে পাঠানো হয়। অতএব, এই প্রতিক্রিয়াটি ত্রুটি কোড সহ একটি502 Bad Gateway
ত্রুটির সাথে ব্যর্থ হয়:messaging.adaptors.http.flow.DecompressionFailureAtResponse
।
বার্তা প্রসেসর লগ
বার্তা প্রসেসর লগ ব্যবহার করে যাচাই করতে:
আপনি যদি একজন ব্যক্তিগত ক্লাউড ব্যবহারকারী হন, তাহলে আপনি HTTP
502
ত্রুটি সম্পর্কে মূল তথ্য নির্ধারণ করতে বার্তা প্রসেসর লগ ব্যবহার করতে পারেন।বার্তা প্রসেসর লগ চেক করুন:
/opt/apigee/var/log/edge-message-processor/logs/system.log
একটি নির্দিষ্ট সময়কালের মধ্যে (যদি সমস্যাটি অতীতে ঘটে থাকে) কোন
502
ত্রুটি আছে কিনা বা502
সাথে কোন প্রতিক্রিয়া এখনও ব্যর্থ হয়েছে কিনা তা দেখতে অনুসন্ধান করুন। আপনি নিম্নলিখিত অনুসন্ধান স্ট্রিং ব্যবহার করতে পারেন:grep -ri "ZipException"
আপনি system.log থেকে নিম্নলিখিতগুলির অনুরূপ লাইনগুলি পাবেন:
দৃশ্যকল্প #1
পরিস্থিতি #1: যখন API প্রতিক্রিয়ার শিরোনাম থাকে বিষয়বস্তু-এনকোডিং: gzip
2021-08-02 06:50:25,433 NIOThread@2 ERROR HTTP.CLIENT - HTTPClient$Context.onInputException() : ClientInputChannel(ClientChannel[Connected: Remote:3.8.1.1:9000 Local:10.0.115.32:41298]@38140 useCount=1 bytesRead=0 bytesWritten=203 age=469ms lastIO=0ms isOpen=true).onExceptionRead exception: {}
java.util.zip.ZipException: Not in GZIP format
---trimmed-- 2021-08-02 06:50:25,433 NIOThread@2 INFO HTTP.CLIENT - HTTPClient$Context.logContextDetails() : Request details : host=null path=/folder/testFile method=GET. Channel details : Bytes read=0 2021-08-02 06:50:25,434 NIOThread@2 ERROR ADAPTORS.HTTP.FLOW - AbstractResponseListener.onException() : AbstractResponseListener.onError(HTTPResponse@4806fdab, Not in GZIP format) 2021-08-02 06:50:25,434 NIOThread@2 INFO HTTP.SERVICE - ExceptionHandler.handleException() : Exceptionjava.util.zip.ZipException: Not in GZIP format
occurred while writing to channel null 2021-08-02 06:50:25,434 NIOThread@2 INFO HTTP.SERVICE - ExceptionHandler.handleException() : Exception trace: java.util.zip.ZipException: Not in GZIP formatলাইন
java.util.zip.ZipException: Not in GZIP format
এটি নির্দেশ করে যে প্রতিক্রিয়া পেলোড GZIP ফর্ম্যাটে পাঠানো হয়নি যদিওContent-Encoding
gzip হিসাবে নির্দিষ্ট করা হয়েছে। অতএব, Apigee Edge ব্যতিক্রমটি ছুড়ে দেয় এবং ক্লায়েন্ট অ্যাপ্লিকেশনগুলিতে ফল্ট কোডmessaging.adaptors.http.flow.DecompressionFailureAtResponse
সহ একটি502
স্ট্যাটাস কোড প্রদান করে।দৃশ্যকল্প #2
দৃশ্য #2: যখন API প্রতিক্রিয়ার শিরোনাম থাকে Content-Encoding: deflate
2021-08-02 06:35:21,215 NIOThread@0 ERROR HTTP.CLIENT - HTTPClient$Context.onInputException() : ClientInputChannel(ClientChannel[Connected: Remote:3.8.1.1:9000 Local:192.168.194.140:35224]@36014 useCount=1 bytesRead=0 bytesWritten=202 age=439ms lastIO=2ms isOpen=true).onExceptionRead exception: {}
java.util.zip.ZipException: incorrect header check
---trimmed---- Caused by:java.util.zip.DataFormatException: incorrect header check
---trimmed--- 2021-08-02 06:35:21,215 NIOThread@0 INFO HTTP.CLIENT - HTTPClient$Context.logContextDetails() : Request details : host=null path=/folder/testFile method=GET. Channel details : Bytes read=0 2021-08-02 06:35:21,216 NIOThread@0 ERROR ADAPTORS.HTTP.FLOW - AbstractResponseListener.onException() : AbstractResponseListener.onError(HTTPResponse@3966e277, incorrect header check) 2021-08-02 06:35:21,216 NIOThread@0 INFO HTTP.SERVICE - ExceptionHandler.handleException() : Exception java.util.zip.ZipException: incorrect header check occurred while writing to channel null 2021-08-02 06:35:21,217 NIOThread@0 INFO HTTP.SERVICE - ExceptionHandler.handleException() : Exception trace: java.util.zip.ZipException: incorrect header checkলাইন
java.util.zip.ZipException: incorrect header check
এবংCaused by: java.util.zip.DataFormatException: incorrect header check
নির্দেশ করে যে প্রতিক্রিয়া পেলোড ডিফ্লেট ফরম্যাটে পাঠানো হয়নি এবং এনকোডিংয়ের সাথে মেলে না ডিফ্লেটেরContent-Encoding
শিরোনামে নির্দিষ্ট করা হয়েছে। অতএব, Apigee Edge ব্যতিক্রমটি ছুড়ে দেয় এবং ক্লায়েন্ট অ্যাপ্লিকেশনগুলিতে ফল্ট কোডmessaging.adaptors.http.flow.DecompressionFailureAtResponse
সহ একটি502
স্ট্যাটাস কোড প্রদান করে।
রেজোলিউশন
- Apigee এজ এবং ব্যাকএন্ড সার্ভারে API প্রক্সি ফ্লোতে সংকুচিত প্রতিক্রিয়া পেলোডের কোন প্রয়োজন না থাকলে, হেডার
Content-Encoding
পাস করবেন না । প্রতিক্রিয়া পেলোড সংকুচিত করার প্রয়োজন হলে, ধাপ 2 এ যান। - যদি প্রতিক্রিয়া পেলোড সংকুচিত করার প্রয়োজন হয়, তাহলে নিশ্চিত করুন যে ব্যাকএন্ড সার্ভার সর্বদা নিম্নলিখিতগুলি পাঠায়:
- প্রতিক্রিয়াতে
Content-Encoding
শিরোনামের মান হিসাবে সমর্থিত এনকোডিংগুলির যেকোনও - Apigee Edge-এ সমর্থিত বিন্যাসে প্রতিক্রিয়া পেলোড
Content-Encoding
শিরোনামে নির্দিষ্ট করা এনকোডিং বিন্যাসের সাথে মেলে
- প্রতিক্রিয়াতে
- উপরে আলোচিত উদাহরণে, রেসপন্স পেলোড জিপ ফরম্যাটে কিন্তু রেসপন্স হেডারটি
Content-Encoding: gzip
উল্লেখ করে। আপনিContent-Encoding: gzip
এবংgzip
ফর্ম্যাটে প্রতিক্রিয়া পেলোড হিসাবে প্রতিক্রিয়া শিরোনাম পাঠিয়ে সমস্যাটি সমাধান করতে পারেন:curl -v https://HOSTALIAS/v1/test
> < HTTP/1.1 200 OK < Accept-Ranges: bytes <
Content-Encoding: gzip
< Date: Mon, 02 Aug 2021 08:17:35 GMT < Transfer-Encoding: chunked < < response_payload.gz Response Body(in GZIP format)>
স্পেসিফিকেশন
Apigee Edge স্ট্যাটাস কোড 502 Bad Gateway
এর সাথে এরর কোড messaging.adaptors.http.flow.DecompressionFailureAtResponse
নিম্নলিখিত RFC স্পেসিফিকেশন অনুযায়ী সাড়া দেয়:
স্পেসিফিকেশন |
---|
RFC 7231, বিভাগ 6.5.1 |
RFC 7231, বিভাগ 3.1.2.2 |
আপনার যদি এখনও Apigee সাপোর্ট থেকে কোনো সহায়তার প্রয়োজন হয়, তাহলে অবশ্যই ডায়াগনস্টিক তথ্য সংগ্রহ করুন- এ যান।
ডায়াগনস্টিক তথ্য সংগ্রহ করতে হবে
নিম্নলিখিত ডায়াগনস্টিক তথ্য সংগ্রহ করুন, এবং তারপর Apigee Edge সহায়তার সাথে যোগাযোগ করুন:
আপনি যদি একজন পাবলিক ক্লাউড ব্যবহারকারী হন, তাহলে নিম্নলিখিত তথ্য প্রদান করুন:
- প্রতিষ্ঠানের নাম
- পরিবেশের নাম
- API প্রক্সি নাম
-
502
ত্রুটি পুনরুত্পাদন করতে ব্যবহৃত সম্পূর্ণcurl
কমান্ড - API প্রতিক্রিয়াগুলির জন্য ট্রেস ফাইল
আপনি যদি একজন ব্যক্তিগত ক্লাউড ব্যবহারকারী হন, তাহলে নিম্নলিখিত তথ্য প্রদান করুন:
- ব্যর্থ প্রতিক্রিয়াগুলির জন্য সম্পূর্ণ ত্রুটি বার্তা পর্যবেক্ষণ করা হয়েছে
- পরিবেশের নাম
- API প্রক্সি বান্ডেল
- API প্রতিক্রিয়াগুলির জন্য ট্রেস ফাইল
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