400 ত্রুটিপূর্ণ অনুরোধ - DecompressionFailureAtRequest

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

সমস্যার উপসর্গ

API কলের উত্তরে ক্লায়েন্ট অ্যাপ্লিকেশন 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 কীভাবে পেলোড ফর্ম্যাট আশা করে তা দেওয়া হল:

পরিস্থিতি Content-Encoding প্রত্যাশিত পেলোড ফর্ম্যাট
সিঙ্গেল এনকোডিং gzip

Unix gzip ফর্ম্যাট।

RFC1952 GZIP ফর্ম্যাট দেখুন।

সিঙ্গেল এনকোডিং ডিফ্লেট

এই ফর্ম্যাটটি ডিফ্লেট কম্প্রেশন অ্যালগরিদম সহ zlib স্ট্রাকচার ব্যবহার করে।

RFC1950 এবং RFC1951. দেখুন

একাধিক এনকোডিং

একাধিক এনকোডিং

যেমন, এনকোডিং দু'বার করা হলে, এটি হতে পারে:

  • gzip, deflate
  • gzip, gzip
  • deflate, gzip
  • হাওয়াহীন, হাওয়াহীন
হেডারে যেভাবে দেখানো হয়েছে সেই ক্রমে পে-লোডে একাধিক এনকোডিং প্রয়োগ করা হয়েছে।

এই সমস্যার সম্ভাব্য কারণগুলি নিচে উল্লেখ করা হল:

কারণ বিবরণ এর জন্য প্রযোজ্য সমস্যার সমাধান সংক্রান্ত নির্দেশাবলী
অনুরোধ পেলোড ফর্ম্যাট, Content-Encoding হেডারে উল্লেখ করা এনকোডিংয়ের সাথে মিলছে না ক্লায়েন্টের পাঠানো অনুরোধের পেলোড এনকোড করা নেই অথবা Content-Encoding হেডারে উল্লেখ করা এনকোডিংয়ের সাথে ম্যাচ করছে না। এজ পাবলিক ও প্রাইভেট ক্লাউড ব্যবহারকারী

সাধারণ ডায়াগনসিস ধাপ

এই সমস্যা ডায়াগনসিস করতে নিম্নলিখিত টুল/টেকনিকের মধ্যে একটি ব্যবহার করুন:

API মনিটরিং

API মনিটরিং ব্যবহার করে সমস্যার ডায়াগনসিস করতে:

  1. Apigee Edge UI-তে সাইন-ইন করুন উপযুক্ত ভূমিকা সহ ব্যবহারকারী হিসেবে।
  2. যে প্রতিষ্ঠানে সমস্যাটি তদন্ত করতে চান সেটিতে পরিবর্তন করুন।

  3. বিশ্লেষণ করুন > API মনিটরিং > তদন্ত করুন পৃষ্ঠায় নেভিগেট করুন।
  4. আপনি যে নির্দিষ্ট সময়সীমার মধ্যে সমস্যাটি লক্ষ্য করেছেন সেটি বেছে নিন।
  5. প্রক্সি ফিল্টার সব হিসেবে সেট করা আছে কিনা তা নিশ্চিত করুন।
  6. সময় অনুযায়ী সমস্যার কোড প্লট করুন।
  7. এমন একটি সেল বেছে নিন যেখানে messaging.adaptors.http.flow.DecompressionFailureAtRequest ফল্ট কোডটি নিচে দেখানো মতো আছে:

    ( আরও বড় ছবি দেখুন)

  8. নিচে দেখানো পদ্ধতিতে ফল্ট কোড messaging.adaptors.http.flow.DecompressionFailureAtRequest সংক্রান্ত তথ্য দেখানো হয়:

    ( আরও বড় ছবি দেখুন)

  9. লগ দেখুন বিকল্পে ক্লিক করুন এবং 400 সমস্যার কারণে ব্যর্থ হওয়া সারিটি বড় করে দেখুন।

    ( আরও বড় ছবি দেখুন)

  10. লগ উইন্ডো থেকে, নিম্নলিখিত বিবরণ নোট করুন:
    • স্ট্যাটাস কোড: 400
    • সমস্যার সোর্স: proxy
    • সমস্যার কোড: messaging.adaptors.http.flow.DecompressionFailureAtRequest.
  11. Fault Source-এর ভ্যালু proxy হলে, এর অর্থ হল অনুরোধের পেলোড ফর্ম্যাট Content-Encoding হেডারে উল্লেখ করা সাপোর্ট করা এনকোডিং-এর সাথে ম্যাচ করেনি।

ট্রেস টুল

Trace টুল ব্যবহার করে সমস্যার ডায়াগনসিস করতে:

  1. ট্রেস সেশন চালু করুন এবং এগুলির মধ্যে একটি:
    1. 400 Bad Request সমস্যার জন্য অপেক্ষা করুন অথবা
    2. আপনি যদি সমস্যাটি আবার তৈরি করতে পারেন, তাহলে API কল করুন এবং আবার তৈরি করুন 400 Bad Request।
  2. সব FlowInfo দেখুন বিকল্প চালু আছে কিনা দেখুন:

  3. কাজ না করা অনুরোধগুলির মধ্যে একটি বেছে নিন এবং ট্রেস পরীক্ষা করুন।
  4. ট্রেসের বিভিন্ন ফেজ নেভিগেট করুন এবং কোথায় সমস্যা হয়েছে তা খুঁজে বের করুন।
  5. আপনি সাধারণত ফ্লোতে, নিচে দেখানো ক্লায়েন্টের থেকে অনুরোধ পাওয়া গেছে ফেজের ঠিক পরেই সমস্যাটি দেখতে পাবেন:

    ( আরও বড় ছবি দেখুন)

  6. ট্রেস থেকে প্রপার্টির ভ্যালুগুলি নোট করুন:

    • সমস্যা: Decompression failure at request
    • error.class: com.apigee.rest.framework.BadRequestException
    • error.cause: Not in GZIP format

    error.cause থেকে জানা যায় যে অনুরোধের পেলোড GZIP ফর্ম্যাটে নেই। এর অর্থ হল, Apigee Edge আশা করেছিল যে অনুরোধের পেলোড GZIP ফর্ম্যাটে থাকবে কারণ এটি Content-Encoding হেডারেই উল্লেখ করা থাকত।

  7. অনুরোধের হেডার Content-Encoding-এর ভ্যালু নির্ধারণ করুন। এর জন্য, নিচে দেখানো ক্লায়েন্টের থেকে অনুরোধ পাওয়া গেছে ফেজে নেভিগেট করুন:

    ( আরও বড় ছবি দেখুন)

    মনে রাখবেন যে অনুরোধ হেডার Content-Encoding-এর ভ্যালু হল gzip.

    উপরের স্যাম্পেল ট্রেস থেকে দেখা যাচ্ছে যে অনুরোধ হেডার Content-Encoding-এ উল্লেখ করা এনকোডিং gzip; তবে, অনুরোধের পেলোড GZIP ফর্ম্যাটে নেই। তাই, Apigee gzip ব্যবহার করে পেলোড ডিকম্প্রেস করতে পারে না এবং Decompression failure at request সমস্যাটি দেখায়।

  8. Apigee Edge-এর পাঠানো স্ট্যাটাস কোড ও সমস্যার মেসেজ নোট করুন

    নিচে দেখানো ট্রেসে ক্লায়েন্টকে উত্তর পাঠানো হয়েছে ফেজে:

    ( আরও বড় ছবি দেখুন)

    ট্রেস থেকে নিম্নলিখিত বিবরণ মনে রাখবেন:

    • স্ট্যাটাস কোড: 400 Bad Request.
    • সমস্যা সংক্রান্ত কন্টেন্ট: {"fault":{"faultstring":"Decompression failure at request","detail":{"errorcode":"messaging.adaptors.http.flow.DecompressionFailureAtRequest"}}}
  9. ট্রেসে AX (Analytics Data Recorded) ফেজে নেভিগেট করুন এবং এটিতে ক্লিক করুন।

  10. নিচের দিকে স্ক্রল করে ফেজ সংক্রান্ত বিবরণ, সমস্যার হেডার বিভাগে যান এবং নিচে দেখানো X-Apigee-fault-code ও X-Apigee-fault-source-এর ভ্যালু নির্ধারণ করুন:

    ( আরও বড় ছবি দেখুন)

  11. আপনি X-Apigee-fault-code এবং X-Apigee-fault-source-এর ভ্যালু messaging.adaptors.http.flow.DecompressionFailureAtRequest এবং policy হিসেবে দেখতে পাবেন, এর থেকে বোঝা যায় যে অনুরোধের পেলোড ফর্ম্যাট Content-Encoding হেডারে উল্লেখ করা এনকোডিংয়ের সাথে মিলছে না।
    রেসপন্স হেডার ভ্যালু
    X-Apigee-fault-code messaging.adaptors.http.flow.DecompressionFailureAtRequest
    X-Apigee-fault-source policy

NGINX

NGINX অ্যাক্সেস লগ ব্যবহার করে সমস্যার ডায়াগনসিস করতে:

  1. আপনি প্রাইভেট ক্লাউড ব্যবহারকারী হলে, HTTP 400 সমস্যার ব্যাপারে মূল তথ্য নির্ধারণ করতে আপনি NGINX অ্যাক্সেস লগ ব্যবহার করতে পারবেন।
  2. NGINX অ্যাক্সেস লগ চেক করুন:

    /opt/apigee/var/log/edge-router/nginx/ORG~ENV.PORT#_access_log

    কোথায়: ORG, ENV ও PORT#-এর জায়গায় আসল ভ্যালু বসাতে হবে।

  3. নির্দিষ্ট সময়সীমার মধ্যে কোনও 400 সমস্যা হয়েছে কিনা তা সার্চ করে দেখুন (যদি সমস্যাটি আগে হয়ে থাকে) অথবা এখনও কোনও অনুরোধ 400 সহ ব্যর্থ হচ্ছে কিনা তা দেখুন।
  4. আপনি যদি 400 ত্রুটি খুঁজে পান, তাহলে X-Apigee-fault-code messaging.adaptors.http.flow.DecompressionFailureAtRequest-এর ভ্যালুর সাথে ম্যাচ করে দেখুন, তারপর X-Apigee-fault-source-এর ভ্যালু নির্ধারণ করুন।

    NGINX অ্যাক্সেস লগ থেকে 400 সমস্যার নমুনা:

    NGINX অ্যাক্সেস লগ থেকে নেওয়া উপরের নমুনা এন্ট্রিতে X-Apigee-fault-code ও X-Apigee-fault-source-এর জন্য নিম্নলিখিত ভ্যালু আছে:

    রেসপন্স হেডার ভ্যালু
    X-Apigee-fault-code messaging.adaptors.http.flow.DecompressionFailureAtRequest
    X-Apigee-fault-source policy

কারণ: অনুরোধের পেলোড ফর্ম্যাট, Content-Encoding হেডারে নির্দিষ্ট করা এনকোডিংয়ের সাথে ম্যাচ করে না

সাধারণত, অনুরোধের হেডার Content-Encoding-এ সঠিক এবং কাজ করে এমন এনকোডিং থাকলে, Apigee Edge সবসময় পেলোড ডিকম্প্রেস করে। তাই, এটি আশা করা হয় যে অনুরোধের পেলোডের ফর্ম্যাটটি অনুরোধের হেডারে নির্দিষ্ট করা এনকোডিংয়ের সাথে মিলতে হবে Content-Encoding। মিল না থাকলে, আপনি এই সমস্যাটি দেখতে পাবেন।

ডায়াগনসিস

  1. API মনিটরিং, ট্রেস টুল বা NGINX অ্যাক্সেস লগ ব্যবহার করে দেখা সমস্যার সমস্যার কোড ও সমস্যার সোর্স নির্ধারণ করুন, যা সমস্যার সাধারণ ডায়াগনসিস ধাপ-এ ব্যাখ্যা করা হয়েছে।
  2. সমস্যা কোড messaging.adaptors.http.flow.DecompressionFailureAtRequest এবং সমস্যার সোর্স-এর ভ্যালু policy বা proxy হলে, এই থেকে বোঝা যায় যে ক্লায়েন্ট অ্যাপ্লিকেশনের পাঠানো অনুরোধে এমন পে-লোড আছে যা অনুরোধ হেডারে উল্লেখ করা সাপোর্ট করা এনকোডিং-এর সাথে ম্যাচ করে না Content-Encoding।
  3. আপনি নিম্নলিখিত পদ্ধতিগুলির মধ্যে একটি ব্যবহার করে HTTP অনুরোধের অংশ হিসেবে ম্যাচ না করা ডেটা নির্ধারণ করতে পারবেন:

    সমস্যা সংক্রান্ত মেসেজ

    সমস্যার মেসেজ ব্যবহার করে যাচাই করতে:

    1. Apigee Edge থেকে পাওয়া সম্পূর্ণ সমস্যার মেসেজে আপনার অ্যাক্সেস থাকলে, তাহলে faultstring দেখুন।

      সমস্যার মেসেজের নমুনা:

      "faultstring":"Decompression failure at request"
    2. উপরের সমস্যার মেসেজে, এটি "Decompression failure at request" দেখায়, যার অর্থ হল অনুরোধ Content-Encoding হেডারে নির্দিষ্ট করা এনকোডিং ব্যবহার করে ডিকম্প্রেস করা যায়নি।

    ট্রেস

    Trace ব্যবহার করে যাচাই করতে:

    1. Content-Encoding রিকোয়েস্ট হেডার এবং error.cause প্রপার্টির ভ্যালু নির্ধারণ করতে সাধারণ ডায়াগনসিস ধাপ-এ ব্যাখ্যা করা Trace ব্যবহার করুন।
    2. স্যাম্পেল ট্রেস থেকে পাওয়া ভ্যালুগুলি হল:

      • Content-Encoding: gzip
      • error.cause: Not in GZIP format

      অনুরোধের হেডারে Content-Encoding -এর ভ্যালু gzip; তবে, অনুরোধের পেলোড GZIP ফর্ম্যাটে নেই (error.cause-এ যেমন উল্লেখ করা হয়েছে)। তাই, Apigee Edge 400 Bad Request এবং সমস্যার কোড messaging.adaptors.http.flow.DecompressionFailureAtRequest সহ উত্তর দেয়।

    আসল অনুরোধ

    আসল অনুরোধ ব্যবহার করে যাচাই করতে:

    ক্লায়েন্টের অ্যাপ্লিকেশনের মাধ্যমে করা আসল অনুরোধে আপনার অ্যাক্সেস থাকলে, নিম্নলিখিত ধাপগুলি অনুসরণ করুন:

    1. অনুরোধের হেডারে Content-Encoding পাস করা ভ্যালু নির্ধারণ করুন।
    2. অনুরোধের অংশ হিসেবে পাঠানো পেলোডের ফর্ম্যাট নির্ধারণ করুন।
    3. Content-Encoding হেডারের ভ্যালু যদি সাপোর্ট করা এনকোডিংয়ের তালিকায় থাকে, কিন্তু অনুরোধের পেলোডের ফর্ম্যাট যদি Content-Encoding হেডারে উল্লেখ করা এনকোডিংয়ের সাথে না মেলে, তাহলে এটিই সমস্যার কারণ।

      নমুনা অনুরোধ:

      curl -v "http://HOSTALIAS/v1/testgzip" -H "Content-Encoding: gzip" -X POST -d @request_payload.zip
      

      উপরের নমুনা অনুরোধটি gzip ভ্যালুকে Content-Encoding হেডারে পাঠায়, যেটি Apigee Edge-এ কাজ করে এমন এনকোডিং। তবে, অনুরোধের পেলোড request_payload.zip ZIP ফর্ম্যাটে আছে। তাই, এই অনুরোধটি 400 Bad Request স্ট্যাটাস কোড ও এই সমস্যার কোড সহ ব্যর্থ হয়েছে: messaging.adaptors.http.flow.DecompressionFailureAtRequest.

    মেসেজ প্রসেসর লগ

    Message Processor লগ ব্যবহার করে যাচাই করতে:

    আপনি প্রাইভেট ক্লাউড ব্যবহারকারী হলে, HTTP 400 সংক্রান্ত সমস্যার মূল তথ্য নির্ধারণ করতে, আপনি মেসেজ প্রসেসর লগ ব্যবহার করতে পারবেন।

    1. API মনিটরিং, ট্রেস টুল, অথবা NGINX অ্যাক্সেস লগ ব্যবহার করে ব্যর্থ হওয়া অনুরোধের মেসেজ আইডি নির্ধারণ করুন, যা সাধারণ ডায়াগনসিস ধাপ-এ ব্যাখ্যা করা হয়েছে।
    2. মেসেজ প্রসেসর লগে মেসেজ আইডি সার্চ করুন:

      /opt/apigee/var/log/edge-message-processor/logs/system.log

    3. আপনি নিম্নলিখিত ব্যতিক্রমগুলির মধ্যে একটি দেখতে পাবেন:

      পরিস্থিতি #১

      পরিস্থিতি #১: API অনুরোধে হেডার 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() :
      Exception java.util.zip.ZipException: Not in GZIP format occurred 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 লাইনটি থেকে বোঝা যাচ্ছে যে অনুরোধের পে-লোড GZIP ফর্ম্যাটে পাঠানো হয়নি, যদিও Content-Encoding gzip হিসেবে নির্দিষ্ট করা হয়েছে। তাই, Apigee Edge ব্যতিক্রম দেখায় এবং ক্লায়েন্ট অ্যাপ্লিকেশনকে ফল্ট কোড সহ 400 স্ট্যাটাস কোড messaging.adaptors.http.flow.DecompressionFailureAtRequest রিটার্ন করে।

      পরিস্থিতি #২

      পরিস্থিতি #২: API অনুরোধে 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 স্ট্যাটাস কোড ফেরত দেয়।

রেজোলিউশন

  1. Apigee Edge-এ API প্রক্সি ফ্লোতে এবং ব্যাকএন্ড সার্ভারে কম্প্রেস করা অনুরোধ পেলোডের প্রয়োজন না থাকলে, Content-Encoding হেডার পাস করবেন না। অনুরোধের পেলোড কম্প্রেস করার প্রয়োজন হলে, ধাপ ২-এ যান।
  2. নিশ্চিত করুন যে ক্লায়েন্ট অ্যাপ্লিকেশন সবসময় নিম্নলিখিতগুলি পাঠায়:
    • অনুরোধে Content-Encoding হেডার ভ্যালু হিসেবে কাজ করে এমন এনকোডিং-এর যেকোনও একটি
    • Apigee Edge-এ পাঠানো অনুরোধের পে-লোড, এনকোডিং ফর্ম্যাটের সাথে মানানসই হতে হবে যা Content-Encoding হেডারে উল্লেখ করা আছে
  3. উপরে আলোচনা করা উদাহরণে, অনুরোধের পেলোড ZIP ফর্ম্যাটে আছে কিন্তু অনুরোধের হেডার Content-Encoding: gzip নির্দিষ্ট করে। আপনি অনুরোধ হেডারকে Content-Encoding: gzip হিসেবে এবং অনুরোধের পেলোডকেও gzip ফর্ম্যাটে পাঠিয়ে এই সমস্যার সমাধান করতে পারেন:
    curl -v "https://HOSTALIAS/v1/testgzip" -H "Content-Encoding: gzip" -X POST -d @request_payload.gz
    

স্পেসিফিকেশন

Apigee Edge, নিম্নলিখিত RFC স্পেসিফিকেশন অনুযায়ী 400 Bad Request স্ট্যাটাস কোড সহ messaging.adaptors.http.flow.DecompressionFailureAtRequest সমস্যার কোড দিয়ে উত্তর দেয়:

স্পেসিফিকেশন
RFC 7231, section 6.5.1
RFC 7231, section 3.1.2.2

Apigee সহায়তা টিমের থেকে আপনার এখনও কোনও সাহায্যের প্রয়োজন হলে, রোগ নির্ণয় সংক্রান্ত তথ্য অবশ্যই সংগ্রহ করতে হবে লিঙ্কে যান।

অবশ্যই ডায়াগনস্টিক তথ্য সংগ্রহ করতে হবে

নিম্নলিখিত ডায়াগনস্টিক তথ্য সংগ্রহ করুন এবং তারপর Apigee Edge সহায়তা টিমের সাথে যোগাযোগ করুন:

আপনি পাবলিক ক্লাউড ব্যবহারকারী হলে, নিম্নলিখিত তথ্য প্রদান করুন:

  • সংস্থার নাম
  • পরিবেশের নাম
  • API প্রক্সির নাম
  • 400 সমস্যাটি আবার তৈরি করতে curl কমান্ড সম্পূর্ণ করুন
  • API অনুরোধের জন্য ট্রেস ফাইল

আপনি প্রাইভেট ক্লাউড ব্যবহারকারী হলে, নিম্নলিখিত তথ্য দিন:

  • অনুরোধ সম্পূর্ণ না হওয়ার ক্ষেত্রে দেখা সম্পূর্ণ সমস্যার মেসেজ
  • পরিবেশের নাম
  • API Proxy বান্ডেল
  • 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