আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন .info- তে যান।
লক্ষণ
ক্লায়েন্ট অ্যাপ্লিকেশনটি একটি এপিআই অনুরোধের প্রতিক্রিয়া হিসাবে "Service Unavailable" বার্তা সহ একটি 503 HTTP স্ট্যাটাস কোড পায়। UI ট্রেসে, আপনি লক্ষ্য করবেন যে ব্যর্থ এপিআই অনুরোধটির টার্গেট রিকোয়েস্ট ফ্লো-তে error.cause হলো Received fatal alert: bad_certificate "।
আপনার যদি মেসেজ প্রসেসর লগ দেখার সুযোগ থাকে, তাহলে আপনি ব্যর্থ হওয়া এপিআই অনুরোধের জন্য Received fatal alert: bad_certificate এই ত্রুটি বার্তাটি দেখতে পাবেন। একটি দ্বি-মুখী টিএলএস (TLS) সেটআপে মেসেজ প্রসেসর এবং ব্যাকএন্ড সার্ভারের মধ্যে এসএসএল হ্যান্ডশেক প্রক্রিয়ার সময় এই ত্রুটিটি দেখা যায়।
ত্রুটি বার্তা
ক্লায়েন্ট অ্যাপ্লিকেশনটি নিম্নলিখিত প্রতিক্রিয়া কোডটি পায়:
HTTP/1.1 503 Service Unavailable
এছাড়াও, আপনি নিম্নলিখিত ত্রুটি বার্তাটি দেখতে পারেন:
{
"fault": {
"faultstring":"The Service is temporarily unavailable",
"detail":{
"errorcode":"messaging.adaptors.http.flow.ServiceUnavailable"
}
}
} প্রাইভেট ক্লাউড ব্যবহারকারীরা /opt/apigee/var/log/edge-message-processor/system.log ফাইলে নির্দিষ্ট API অনুরোধটির জন্য নিম্নলিখিত ত্রুটিটি দেখতে পাবেন:
2017-10-23 05:28:57,813 org: org-name env: env-name api: apiproxy-name rev: revision-number messageid: message_id NIOThread@0 ERROR HTTP.CLIENT - HTTPClient$Context.handshakeFailed() : SSLClientChannel[C: IP address : port # Remote host: IP address : port # ]@65461 useCount=1 bytesRead=0 bytesWritten=0 age=529ms lastIO=529ms handshake failed , message: Received fatal alert: bad_certificate
সম্ভাব্য কারণসমূহ
এই সমস্যার সম্ভাব্য কারণগুলো নিম্নরূপ:
| কারণ | বর্ণনা | সমস্যা সমাধানের নির্দেশাবলী প্রযোজ্য |
| কোন ক্লায়েন্ট সার্টিফিকেট নেই | টার্গেট সার্ভারের টার্গেট এন্ডপয়েন্টে ব্যবহৃত কীস্টোরে কোনো ক্লায়েন্ট সার্টিফিকেট নেই। | এজ প্রাইভেট এবং পাবলিক ক্লাউড ব্যবহারকারীরা |
| সার্টিফিকেট কর্তৃপক্ষের অমিল | মেসেজ প্রসেসরের কীস্টোরে থাকা লিফ সার্টিফিকেটের (সার্টিফিকেট চেইনের প্রথম সার্টিফিকেট) সার্টিফিকেট অথরিটি, ব্যাকএন্ড সার্ভার কর্তৃক গৃহীত কোনো সার্টিফিকেট অথরিটির সাথে মেলে না। | এজ প্রাইভেট এবং পাবলিক ক্লাউড ব্যবহারকারীরা |
সাধারণ রোগ নির্ণয়ের ধাপসমূহ
- Edge UI-তে ট্রেস চালু করুন, API কলটি করুন এবং সমস্যাটি পুনরায় তৈরি করুন।
- UI ট্রেস ফলাফলে, প্রতিটি ফেজ-এর মধ্য দিয়ে যান এবং ত্রুটিটি কোথায় ঘটেছে তা নির্ধারণ করুন। ত্রুটিটি টার্গেট রিকোয়েস্ট ফ্লো-তে ঘটে থাকবে।
- যে ফ্লো-টিতে ত্রুটি দেখাচ্ছে সেটি পরীক্ষা করুন, আপনি নীচের উদাহরণ ট্রেসে দেখানো ত্রুটিটি দেখতে পাবেন:

- উপরের স্ক্রিনশটে যেমন দেখছেন, error.cause হলো "Received fatal alert: bad_certificate" ।
- আপনি যদি প্রাইভেট ক্লাউড ব্যবহারকারী হন, তাহলে নিচের নির্দেশাবলী অনুসরণ করুন:
- ট্রেসে AX দ্বারা নির্দেশিত ফেজে "
X-Apigee.Message-ID" এরর হেডারের মান নির্ধারণ করে আপনি ব্যর্থ হওয়া API অনুরোধের মেসেজ আইডি পেতে পারেন। -
/opt/apigee/var/log/edge-message-processor/system.logএই মেসেজ প্রসেসর লগে এই মেসেজ আইডিটি অনুসন্ধান করুন এবং ত্রুটিটি সম্পর্কে আরও কোনো তথ্য খুঁজে পান কিনা তা নির্ধারণ করুন:2017-10-23 05:28:57,813 org:org-name env:env-name api:apiproxy-name rev:revision-number messageid:message_id NIOThread@0 ERROR HTTP.CLIENT - HTTPClient$Context.handshakeFailed() : SSLClientChannel[C:IP address:port # Remote host:IP address:port #]@65461 useCount=1 bytesRead=0 bytesWritten=0 age=529ms lastIO=529ms handshake failed, message: Received fatal alert: bad_certificate 2017-10-23 05:28:57,813 org:org-name env:env-name api:apiproxy-name rev:revision-number messageid:message_id NIOThread@0 ERROR HTTP.CLIENT - HTTPClient$Context.handshakeFailed() : SSLInfo: KeyStore:java.security.KeyStore@52de60d9 KeyAlias:KeyAlias TrustStore:java.security.KeyStore@6ec45759 2017-10-23 05:28:57,814 org:org-name env:env-name api:apiproxy-name rev:revision-number messageid:message_id NIOThread@0 ERROR ADAPTORS.HTTP.FLOW - RequestWriteListener.onException() : RequestWriteListener.onException(HTTPRequest@6071a73d) javax.net.ssl.SSLException: Received fatal alert: bad_certificate at sun.security.ssl.Alerts.getSSLException(Alerts.java:208) ~[na:1.8.0_101] at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1666) ~[na:1.8.0_101] at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1634) ~[na:1.8.0_101] at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1800) ~[na:1.8.0_101] at com.apigee.nio.NIOSelector$SelectedIterator.findNext(NIOSelector.java:496) [nio-1.0.0.jar:na] at com.apigee.nio.util.NonNullIterator.computeNext(NonNullIterator.java:21) [nio-1.0.0.jar:na] at com.apigee.nio.util.AbstractIterator.hasNext(AbstractIterator.java:47) [nio-1.0.0.jar:na] at com.apigee.nio.NIOSelector$2.findNext(NIOSelector.java:312) [nio-1.0.0.jar:na] at com.apigee.nio.NIOSelector$2.findNext(NIOSelector.java:302) [nio-1.0.0.jar:na] at com.apigee.nio.util.NonNullIterator.computeNext(NonNullIterator.java:21) [nio-1.0.0.jar:na] at com.apigee.nio.util.AbstractIterator.hasNext(AbstractIterator.java:47) [nio-1.0.0.jar:na] at com.apigee.nio.handlers.NIOThread.run(NIOThread.java:59) [nio-1.0.0.jar:na]
মেসেজ প্রসেসর লগে
Received fatal alert: bad_certificateত্রুটিটির জন্য একটি স্ট্যাক ট্রেস ছিল, কিন্তু এই সমস্যার কারণ নির্দেশ করে এমন কোনো অতিরিক্ত তথ্য সেখানে নেই।
- ট্রেসে AX দ্বারা নির্দেশিত ফেজে "
- এই বিষয়টি আরও খতিয়ে দেখার জন্য, আপনাকে tcpdump টুল ব্যবহার করে TCP/IP প্যাকেট ক্যাপচার করতে হবে।
- আপনি যদি একজন প্রাইভেট ক্লাউড ব্যবহারকারী হন, তাহলে আপনি ব্যাকএন্ড সার্ভার বা মেসেজ প্রসেসরে TCP/IP প্যাকেটগুলো ক্যাপচার করতে পারেন। বিশেষত ব্যাকএন্ড সার্ভারেই সেগুলো ক্যাপচার করা শ্রেয়, কারণ প্যাকেটগুলো সেখানেই ডিক্রিপ্ট করা হয়।
- আপনি যদি পাবলিক ক্লাউড ব্যবহারকারী হন, তাহলে ব্যাকএন্ড সার্ভারে TCP/IP প্যাকেটগুলো ক্যাপচার করুন।
- আপনি কোথায় TCP/IP প্যাকেট ক্যাপচার করতে চান তা ঠিক করার পর, নিচের tcpdump কমান্ডটি ব্যবহার করুন।
tcpdump -i any -s 0 host <IP address> -w <File name>
আপনি যদি মেসেজ প্রসেসরে TCP/IP প্যাকেটগুলো গ্রহণ করেন, তাহলে
tcpdumpকমান্ডে ব্যাকএন্ড সার্ভারের পাবলিক আইপি অ্যাড্রেস ব্যবহার করুন।যদি ব্যাকএন্ড সার্ভার/মেসেজ প্রসেসরের একাধিক আইপি অ্যাড্রেস থাকে, তাহলে আপনাকে একটি ভিন্ন tcpdump কমান্ড ব্যবহার করতে হবে। এই টুলটি এবং এর অন্যান্য সংস্করণ সম্পর্কে আরও তথ্যের জন্য tcpdump দেখুন।
- Wireshark টুল বা আপনার পরিচিত অনুরূপ কোনো টুল ব্যবহার করে TCP/IP প্যাকেটগুলো বিশ্লেষণ করুন।
ওয়্যারশার্ক টুল ব্যবহার করে নমুনা TCP/IP প্যাকেট ডেটার বিশ্লেষণ নিচে দেওয়া হলো:

- উপরের tcpdump-এর ৪ নম্বর মেসেজটি থেকে দেখা যাচ্ছে যে, মেসেজ প্রসেসর (সোর্স) ব্যাকএন্ড সার্ভারে (ডেস্টিনেশন) একটি "ক্লায়েন্ট হ্যালো" মেসেজ পাঠিয়েছে।
- বার্তা #৫ থেকে বোঝা যায় যে, ব্যাকএন্ড সার্ভারটি মেসেজ প্রসেসরের কাছ থেকে আসা ক্লায়েন্ট হ্যালো বার্তাটি স্বীকার করেছে।
- ব্যাকএন্ড সার্ভার তার সার্টিফিকেট সহ "সার্ভার হ্যালো" বার্তাটি পাঠায় এবং তারপর ৭ নং বার্তায় ক্লায়েন্টকে তার সার্টিফিকেট পাঠাতে অনুরোধ করে।
- মেসেজ প্রসেসর সার্টিফিকেটের যাচাইকরণ সম্পন্ন করে এবং মেসেজ #৮-এ ব্যাকএন্ড সার্ভারের ServerHello মেসেজটি প্রাপ্তিস্বীকার করে।
- মেসেজ প্রসেসর ৯ নম্বর মেসেজে তার সার্টিফিকেটটি ব্যাকএন্ড সার্ভারে পাঠায়।
- ব্যাকএন্ড সার্ভার ১১ নম্বর বার্তায় মেসেজ প্রসেসরের সার্টিফিকেট প্রাপ্তি স্বীকার করেছে।
তবে, এটি অবিলম্বে মেসেজ প্রসেসরের কাছে একটি মারাত্মক সতর্কতা: ত্রুটিপূর্ণ সার্টিফিকেট (মেসেজ #১২) পাঠায়। এটি নির্দেশ করে যে মেসেজ প্রসেসর দ্বারা প্রেরিত সার্টিফিকেটটি ত্রুটিপূর্ণ ছিল এবং সেই কারণে ব্যাকএন্ড সার্ভারে সার্টিফিকেট যাচাইকরণ ব্যর্থ হয়েছে। ফলস্বরূপ, এসএসএল হ্যান্ডশেক ব্যর্থ হয় এবং সংযোগটি বন্ধ হয়ে যাবে।

চলুন এখন মেসেজ প্রসেসর কর্তৃক প্রেরিত সার্টিফিকেটের বিষয়বস্তু যাচাই করতে মেসেজ #৯ দেখি:

- আপনি দেখতে পাচ্ছেন, ব্যাকএন্ড সার্ভার ক্লায়েন্টের কাছ থেকে কোনো সার্টিফিকেট পায়নি ( সার্টিফিকেটের দৈর্ঘ্য: ০) । তাই, ব্যাকএন্ড সার্ভার ‘ব্যাড সার্টিফিকেট’ নামক একটি মারাত্মক সতর্কতা (Fatal Alert: Bad Certificate) পাঠাচ্ছে।
- সাধারণত এটি তখন ঘটে যখন ক্লায়েন্ট, অর্থাৎ মেসেজ প্রসেসর (একটি জাভা ভিত্তিক প্রসেস):
- এর কীস্টোরে কোনো ক্লায়েন্ট সার্টিফিকেট নেই, অথবা;
- এটি একটি ক্লায়েন্ট সার্টিফিকেট পাঠাতে পারছে না। এমনটা হতে পারে যদি এটি ব্যাকএন্ড সার্ভারের গ্রহণযোগ্য সার্টিফিকেট অথরিটিগুলোর কোনো একটি দ্বারা ইস্যু করা সার্টিফিকেট খুঁজে না পায়। অর্থাৎ, যদি ক্লায়েন্টের লিফ সার্টিফিকেটের (যেমন, চেইনের প্রথম সার্টিফিকেট) সার্টিফিকেট অথরিটি ব্যাকএন্ড সার্ভারের কোনো গ্রহণযোগ্য সার্টিফিকেট অথরিটির সাথে না মেলে, তাহলে মেসেজ প্রসেসর সার্টিফিকেটটি পাঠাবে না।
চলুন, এই কারণগুলোর প্রত্যেকটি আলাদাভাবে নিম্নরূপে আলোচনা করা যাক।
কারণ: কোনো ক্লায়েন্ট সার্টিফিকেট নেই
রোগ নির্ণয়
যদি টার্গেট এন্ডপয়েন্টের SSL Info সেকশনে উল্লেখিত কীস্টোরে অথবা সেখানে ব্যবহৃত টার্গেট সার্ভারে কোনো সার্টিফিকেট না থাকে, তাহলে সেটাই এই ত্রুটির কারণ।
এটাই কারণ কিনা তা নির্ধারণ করতে নিচের ধাপগুলো অনুসরণ করুন:
- নিচের ধাপগুলো অনুসরণ করে নির্দিষ্ট API প্রক্সির জন্য টার্গেট এন্ডপয়েন্ট বা টার্গেট সার্ভারে ব্যবহৃত কীস্টোরটি নির্ধারণ করুন:
- টার্গেট এন্ডপয়েন্ট বা টার্গেট সার্ভারের SSLInfo সেকশনের Keystore এলিমেন্ট থেকে কীস্টোর রেফারেন্স নামটি সংগ্রহ করুন।
চলুন একটি টার্গেট এন্ডপয়েন্ট কনফিগারেশনের নমুনা SSLInfo সেকশন দেখি:
<SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>true</ClientAuthEnabled> <KeyStore>ref://myKeystoreRef</KeyStore> <KeyAlias>myKey</KeyAlias> <TrustStore>ref://myTrustStoreRef</TrustStore> </SSLInfo>
- উপরের উদাহরণে, কীস্টোর রেফারেন্সের নাম হলো " myKeystoreRef"।
- Edge UI-তে যান এবং API Proxyes -> Environment Configurations নির্বাচন করুন।
রেফারেন্স ট্যাবটি নির্বাচন করুন এবং কীস্টোর রেফারেন্স নামটি অনুসন্ধান করুন। নির্দিষ্ট কীস্টোর রেফারেন্সটির জন্য রেফারেন্স কলাম থেকে নামটি লিখে নিন। এটিই হবে আপনার কীস্টোরের নাম।

- উপরের উদাহরণে, আপনি লক্ষ্য করতে পারেন যে myKeystoreRef-এ "myKeystore"-এর রেফারেন্স রয়েছে। সুতরাং, কীস্টোরের নামটি হলো myKeystore।
- টার্গেট এন্ডপয়েন্ট বা টার্গেট সার্ভারের SSLInfo সেকশনের Keystore এলিমেন্ট থেকে কীস্টোর রেফারেন্স নামটি সংগ্রহ করুন।
- Edge UI অথবা List certs for keystore API ব্যবহার করে যাচাই করুন যে এই কীস্টোরটিতে সার্টিফিকেটটি আছে কিনা।
- যদি কীস্টোরে সার্টিফিকেট থাকে, তাহলে ‘কারণ: সার্টিফিকেট অথরিটি অমিল’ অংশে যান।
- যদি কীস্টোরে কোনো সার্টিফিকেট না থাকে, তাহলে সেই কারণেই মেসেজ প্রসেসর ক্লায়েন্ট সার্টিফিকেট পাঠায় না।
সমাধান
- মেসেজ প্রসেসরের নির্দিষ্ট কীস্টোরে সঠিক ও সম্পূর্ণ ক্লায়েন্ট সার্টিফিকেট চেইন আপলোড করা নিশ্চিত করুন।
কারণ: সার্টিফিকেট কর্তৃপক্ষের অমিল
সাধারণত যখন সার্ভার ক্লায়েন্টকে তার সার্টিফিকেট পাঠাতে অনুরোধ করে, তখন এটি গৃহীত ইস্যুকারী বা সার্টিফিকেট অথরিটিগুলোর একটি তালিকা নির্দেশ করে। যদি মেসেজ প্রসেসরের কীস্টোরে থাকা লিফ সার্টিফিকেটের (অর্থাৎ, সার্টিফিকেট চেইনের প্রথম সার্টিফিকেট) ইস্যুকারী/সার্টিফিকেট অথরিটি ব্যাকএন্ড সার্ভার দ্বারা গৃহীত কোনো সার্টিফিকেট অথরিটির সাথে না মেলে, তাহলে মেসেজ প্রসেসর (যা একটি জাভা-ভিত্তিক প্রসেস ) সার্টিফিকেটটি ব্যাকএন্ড সার্ভারে পাঠাবে না।
বিষয়টি এমন কিনা তা নিশ্চিত করতে নিচের ধাপগুলো অনুসরণ করুন:
- কীস্টোর এপিআই-এর সার্টিফিকেটগুলোর তালিকা দিন ।
- উপরের ধাপ #১-এ প্রাপ্ত প্রতিটি সার্টিফিকেটের বিস্তারিত তথ্য ‘ Get cert for keystore API’ ব্যবহার করে জেনে নিন।
- কীস্টোরে সংরক্ষিত লিফ সার্টিফিকেটের (অর্থাৎ, সার্টিফিকেট চেইনের প্রথম সার্টিফিকেটটির) ইস্যুকারীর নাম লিখে রাখুন।
নমুনা পাতার সার্টিফিকেট
{ "certInfo" : [ { "basicConstraints" : "CA:FALSE", "expiryDate" : 1578889324000, "isValid" : "Yes", "issuer" : "CN=MyCompany Test SHA2 CA G2, DC=testcore, DC=test, DC=dir, DC=mycompany, DC=com", "publicKey" : "RSA Public Key, 2048 bits", "serialNumber" : "65:00:00:00:d2:3e:12:d8:56:fa:e2:a9:69:00:06:00:00:00:d2", "sigAlgName" : "SHA256withRSA", "subject" : "CN=nonprod-api.mycompany.com, OU=ITS, O=MyCompany, L=MELBOURNE, ST=VIC, C=AU", "subjectAlternativeNames" : [ ], "validFrom" : 1484281324000, "version" : 3 } ], "certName" : "nonprod-api.mycompany.com.key.pem-cert" }উপরের উদাহরণে, ইস্যুকারী/সার্টিফিকেট কর্তৃপক্ষ হল
"CN=MyCompany Test SHA2 CA G2, DC=testcore, DC=test, DC=dir, DC=mycompany, DC=com" - নিম্নলিখিত পদ্ধতিগুলোর মধ্যে যেকোনো একটি ব্যবহার করে ব্যাকএন্ড সার্ভারের গৃহীত ইস্যুকারী বা সার্টিফিকেট কর্তৃপক্ষের তালিকা নির্ধারণ করুন:
পদ্ধতি #১: নিচের openssl কমান্ডটি ব্যবহার করুন:
openssl s_client -host <backend server host name> -port <Backend port#> -cert <Client Certificate> -key <Client Private Key>
নীচে দেখানো এই কমান্ডের আউটপুটে 'Acceptable Client Certificate CA names' শিরোনামের অংশটি দেখুন:
Acceptable client certificate CA names /C=AU/ST=VIC/L=MELBOURNE/O=MyCompany/OU=ITS/CN=nonprod-api.mycompany.com /C=AU/ST=VIC/L=MELBOURNE/O=MyCompany/OU=ITS/CN=nonprod-api.mycompany.com
পদ্ধতি #২: TCP/IP প্যাকেটে থাকা
Certificate Requestপ্যাকেটটি পরীক্ষা করুন, যেখানে ব্যাকএন্ড সার্ভার ক্লায়েন্টকে তার সার্টিফিকেট পাঠাতে অনুরোধ করে:উপরে দেখানো নমুনা TCP/IP প্যাকেটগুলিতে,
Certificate Requestপ্যাকেটটি হলো ৭ নম্বর মেসেজ। "ডিস্টিংগুইশড নেমস" বিভাগটি দেখুন, যেখানে ব্যাকএন্ড সার্ভারের গ্রহণযোগ্য সার্টিফিকেট অথরিটিগুলো রয়েছে।
ধাপ #৩-এ প্রাপ্ত সার্টিফিকেট অথরিটি, ধাপ #৪-এ প্রাপ্ত ব্যাকএন্ড সার্ভারের স্বীকৃত ইস্যুকারী বা সার্টিফিকেট অথরিটির তালিকার সাথে মেলে কিনা তা যাচাই করুন। যদি অমিল থাকে, তাহলে মেসেজ প্রসেসর ব্যাকএন্ড সার্ভারে ক্লায়েন্ট সার্টিফিকেট পাঠাবে না।
উপরের উদাহরণে, আপনি লক্ষ্য করতে পারেন যে মেসেজ প্রসেসরের কীস্টোরে থাকা ক্লায়েন্টের লিফ সার্টিফিকেটের ইস্যুকারী ব্যাকএন্ড সার্ভারের কোনো স্বীকৃত সার্টিফিকেট অথরিটির সাথে মেলে না। তাই, মেসেজ প্রসেসর ক্লায়েন্ট সার্টিফিকেটটি ব্যাকএন্ড সার্ভারে পাঠায় না। এর ফলে SSL হ্যান্ডশেক ব্যর্থ হয় এবং ব্যাকএন্ড সার্ভার "
Fatal alert: bad_certificate" মেসেজ পাঠায়।
সমাধান
- ব্যাকএন্ড সার্ভারের ট্রাস্টস্টোরে এমন একটি সার্টিফিকেট সংরক্ষিত আছে কিনা তা নিশ্চিত করুন, যার ইস্যুকারী/সার্টিফিকেট অথরিটি ক্লায়েন্টের লিফ সার্টিফিকেটের (চেইনের প্রথম সার্টিফিকেট) ইস্যুকারী/সার্টিফিকেট অথরিটির সাথে মেলে।
- এই প্লেবুকে বর্ণিত উদাহরণে, সমস্যাটি সমাধান করার জন্য ব্যাকএন্ড সার্ভারের ট্রাস্টস্টোরে
"issuer" : "CN=MyCompany Test SHA2 CA G2, DC=testcore, DC=test, DC=dir, DC=mycompany, DC=com"ইস্যুকারীসহ সার্টিফিকেটটি যোগ করা হয়েছিল।
যদি সমস্যাটি এখনও থেকে যায়, তাহলে 'অবশ্যই ডায়াগনস্টিক তথ্য সংগ্রহ করুন' অংশে যান।
রোগ নির্ণয়ের তথ্য অবশ্যই সংগ্রহ করতে হবে
উপরের নির্দেশাবলী অনুসরণ করার পরেও যদি সমস্যাটি থেকে যায়, তাহলে অনুগ্রহ করে নিম্নলিখিত ডায়াগনস্টিক তথ্য সংগ্রহ করুন। Apigee Edge Support-এর সাথে যোগাযোগ করুন এবং সেগুলি তাদের সাথে শেয়ার করুন:
- আপনি যদি পাবলিক ক্লাউড ব্যবহারকারী হন, তাহলে নিম্নলিখিত তথ্যগুলো প্রদান করুন:
- সংস্থার নাম
- পরিবেশের নাম
- এপিআই প্রক্সি নাম
- ত্রুটিটি পুনরুৎপাদন করতে সম্পূর্ণ কার্ল (curl) কমান্ডটি ব্যবহার করুন।
- ত্রুটি দেখানো ট্রেস ফাইল
- ব্যাকএন্ড সার্ভারে ক্যাপচার করা TCP/IP প্যাকেট
- আপনি যদি প্রাইভেট ক্লাউড ব্যবহারকারী হন, তাহলে নিম্নলিখিত তথ্য প্রদান করুন:
- সম্পূর্ণ ত্রুটি বার্তা পরিলক্ষিত হয়েছে
- এপিআই প্রক্সি বান্ডেল
- ত্রুটি দেখানো ট্রেস ফাইল
- মেসেজ প্রসেসর লগ
/opt/apigee/var/log/edge-message-processor/logs/system.log - ব্যাকএন্ড সার্ভার বা মেসেজ প্রসেসরে ক্যাপচার করা TCP/IP প্যাকেট।
- কীস্টোর এপিআই-এর জন্য সার্টিফিকেট পাওয়ার আউটপুট।
- এই প্লেবুকের কোন কোন অংশ আপনি চেষ্টা করেছেন সে সম্পর্কিত বিবরণ এবং অন্য কোনো তথ্য যা আমাদের এই সমস্যার সমাধান দ্রুত করতে সাহায্য করবে, তা প্রদান করুন।