مشکلات زمان اجرا

شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید .
اطلاعات

هر گونه خطا، مشکل تأخیر یا نتایج غیرمنتظره ای که در طول اجرای درخواست های API شما مشاهده می شود، به عنوان مشکلات runtime نامیده می شود.

خطاهای 4XX/5XX

کتاب بازی

این بخش اطلاعات و راهنمایی هایی در مورد برخی از روش های خاص ارائه می دهد که می توان برای عیب یابی و رفع خطاهای زمان اجرا 4XX و 5XX دنبال کرد.

پاسخ/پیام خطا کد خطا کتاب بازی
HTTP/1.1 500 Internal Server Error با خطای واقعی متفاوت است 500 خطای سرور داخلی

و

500 خطای سرور داخلی - پخش جریانی فعال است

HTTP/1.1 503 Service Unavailable messaging.adaptors.http.flow.ServiceUnavailable سرویس 503 در دسترس نیست
HTTP/1.1 503 Service Unavailable messaging.adaptors.http.flow.NoActiveTargets سرویس 503 در دسترس نیست - NoActiveTargets
HTTP/1.1 503 Service Unavailable messaging.adaptors.http.flow.NoActiveTargets

(علت به دلیل عدم موفقیت در بررسی سلامت است)

سرویس 503 در دسترس نیست - NoActiveTargets عدم موفقیت در بررسی سلامت
HTTP/1.1 503 Service Unavailable

(از سرور باطن)

messaging.adaptors.http.flow.ErrorResponseCode سرویس 503 در دسترس نیست - سرور Backend
HTTP/1.1 504 Gateway Timeout messaging.adaptors.http.flow.GatewayTimeout 504 Gateway Timeout
HTTP/1.1 504 Gateway Timeout

(از سرور باطن)

messaging.adaptors.http.flow.ErrorResponseCode 504 Gateway Timeout - سرور Backend

اطلاعات تشخیصی

اگر در مورد خطاهای زمان اجرا 4XX (مانند خطاهای 400 ، 401 ، 404 و 499 ) یا 5XX (مانند 500 ، 503 ، و 504 ) به کمک Apigee Edge نیاز دارید، اطلاعات تشخیصی و عیب یابی زیر را جمع آوری کرده و به اشتراک بگذارید. مورد پشتیبانی:

اطلاعات تشخیصی از کجا می توانم این اطلاعات را جمع آوری کنم؟ چگونه این اطلاعات را جمع آوری کنم؟
خروجی ابزار ردیابی درخواست‌های ناموفق API رابط کاربری لبه نحوه استفاده از Trace Tool
لاگ های روتر روتر
tar cvzf /tmp/router_logs_ORGNAME_ENVNAME_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-router/nginx/ORGNAME~ENVNAME.*

گزارش های پردازشگر پیام پردازشگر پیام
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system*

تمام داده های تشخیصی را فشرده کنید
>tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_*

400 خطای درخواست بد - خطای گواهی SSL

کتاب بازی

این بخش اطلاعات و راهنمایی هایی را در مورد برخی از رویه های خاص ارائه می دهد که می توان برای عیب یابی و رفع 400 Bad Request - SSL Certificate Error دنبال کرد.

پیغام خطا کتاب بازی
<html>
  <head>
    <title>400 The SSL certificate error</title>
  </head>
  <body bgcolor="white">
    <center> <h1>400 Bad Request</h1>
    </center>
    <center>The SSL certificate error</center>
    <hr>
    <center>nginx</center>
  </body>
</html>

400 خطای درخواست بد - خطای گواهی SSL

اطلاعات تشخیصی

اگر در مورد 400 Bad Request - SSL Certificate Error به کمکی از طرف Apigee Edge نیاز دارید، اطلاعات تشخیصی زیر را جمع آوری کرده و در مورد پشتیبانی به اشتراک بگذارید:

اطلاعات تشخیصی از کجا می توانم این اطلاعات را جمع آوری کنم؟ چگونه این اطلاعات را جمع آوری کنم؟
لاگ های روتر روتر
tar cvzf /tmp/router_logs_ORGNAME_ENVNAME_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-router/nginx/ORGNAME~ENVNAME.*
Tcpdumps روتر

بسته های شبکه را با استفاده از دستور tcpdump در دستگاه روتر ضبط کنید:

sudo tcpdump -s 0 -i any host CLIENT_HOST_IP_ADDRESS -w /tmp/router_tcpdump_$(hostname).pcap

فشرده سازی tcpdump :

tar cvzf /tmp/router_tcpdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/router_tcpdump_$(hostname).pcap
Tcpdumps ماشین مشتری

بسته های شبکه را با استفاده از دستور tcpdump در ماشین کلاینت ضبط کنید:

sudo tcpdump -s 0 -i any host VIRTUAL_HOST_ALIAS -w /tmp/client_tcpdump_$(hostname).pcap

فشرده سازی tcpdump :

tar cvzf /tmp/client_tcpdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/router_tcpdump_$(hostname).pcap
تمام داده های تشخیصی را فشرده کنید روتر
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router*

404 قادر به شناسایی خطای پروکسی برای میزبان نیست

کتاب بازی

این بخش اطلاعات و راهنمایی هایی در مورد برخی از روش های خاص ارائه می دهد که می توان برای عیب یابی و رفع خطای 404 Unable to identify proxy for host دنبال کرد.

پیام خطا یا توضیحات کد خطا کتاب بازی
HTTP/1.1 404 Not Found

{
   "fault":{
      "faultstring":"Unable to identify proxy for host: VIRTUAL_HOST_NAME and url: PATH",
      "detail":{
         "errorcode":"messaging.adaptors.http.flow.ApplicationNotFound"
      }
   }
}

messaging.adaptors.http.flow.ApplicationNotFound 404 قادر به شناسایی پروکسی برای میزبان نیست

اطلاعات تشخیصی

اگر به کمک پشتیبانی Apigee Edge در 404 Unable to identify proxy for host نیستید، اطلاعات تشخیصی زیر را جمع‌آوری کرده و در مورد پشتیبانی به اشتراک بگذارید:

اطلاعات تشخیصی از کجا می توانم این اطلاعات را جمع آوری کنم؟ چگونه این اطلاعات را جمع آوری کنم؟
Deployments خروجی API سرور مدیریت
curl -s http://MANAGEMENT_SERVER_HOST:8080/v1/organizations/ORGNAME/environments/ENVNAME/apis/APINAME/deployments > /tmp/deployments_output_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).json
API و خروجی درخت طبقه بندی پردازشگر پیام

دریافت محیط های بارگذاری شده برای یک سازمان خاص:

curl -s 0:8082/v1/runtime/organizations/ORGNAME/environments > /tmp/rmp_environments_list_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).txt

ویرایش‌های مستقر شده برای یک پروکسی API خاص را دریافت کنید:

curl -s 0:8082/v1/runtime/organizations/ORGNAME/environments/ENVNAME/apis/APINAME/revisions > /tmp/rmp_api_APINAME_revisions_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).txt

درخت طبقه بندی را دریافت کنید:

curl -s 0:8082/v1/classification/tree > /tmp/rmp_classification_tree_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).json
گزارش های پردازشگر پیام پردازشگر پیام
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system*
tar cvzf /tmp/rmp_transactionlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/transactions*
tar cvzf /tmp/rmp_configurationlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/configurations*
tar cvzf /tmp/rmp_system_monitor_config_mp_logs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/edge-message-processor* /opt/apigee/var/log/edge-message-processor/config* /opt/apigee/var/log/edge-message-processor/system-monitor*
Heap dump در پردازنده های پیام پردازشگر پیام

دامپ پشته زنده را دریافت کنید:

sudo -u apigee jmap -dump:live,format=b,file=/opt/apigee/var/snapshot_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).hprof $(cat /opt/apigee/var/run/edge-message-processor/edge-message-processor.pid)

کمپرس پشته:

tar cvzf /tmp/rmp_heapdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/snapshot_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).hprof
تمام داده های تشخیصی را فشرده کنید پردازشگر پیام
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/rmp_* 

502 Bad Gateway - هنگام اتصال به بالادست، بدون جریان بالادستی زنده

کتاب بازی

این بخش اطلاعات و راهنمایی هایی در مورد برخی از روش های خاص ارائه می دهد که می توان برای عیب یابی و رفع مشکل 502 Bad Gateway - no live upstreams while connecting to upstream دنبال کرد.

مشکل پیغام خطا در گزارش ها کتاب بازی
HTTP/1.1 502 Bad Gateway

<html>
<head>
<title>Error</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>An error occurred.</h1>
<p>Sorry, the page you are looking for is currently unavailable.<br/>
Please try again later.</p>
</body>
</html>

خطای زیر را در لاگ های خطای NGINX خواهید دید:

(/opt/apigee/var/log/edge-router/nginx/ ORGNAME ~ ENVNAME ._error_log)

[error] 4796#4796: *56357443 no live upstreams while connecting to upstream, client: ROUTER_IP_ADDRESS , server: HOST_ALIAS , request: "PUT BASE_PATH HTTP/1.1", upstream: "http:// LISTOFMP_IP_R_MP_PORT / BASE_PATH ", host: " HOST_ALIAS "
دروازه بد 502

اطلاعات تشخیصی

اگر به کمک پشتیبانی Apigee Edge در 502 Bad Gateway - no live streams while connecting to upstream اطلاعات تشخیصی زیر را جمع‌آوری کرده و در مورد پشتیبانی به اشتراک بگذارید:

اطلاعات تشخیصی از کجا می توانم این اطلاعات را جمع آوری کنم؟ چگونه این اطلاعات را جمع آوری کنم؟
لاگ های روتر روتر
tar cvzf /tmp/router_logs_ORGNAME_ENVNAME_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-router/nginx/ORGNAME~ENVNAME.*
گزارش های پردازشگر پیام پردازشگر پیام
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system*

خروجی بالا، تخلیه پشته و تخلیه نخ پردازشگر پیام

خروجی فرمان بالا را دریافت کنید:

top -H -bn5 > /tmp/rmp_top_output_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).txt

حفره پشته را دریافت کنید:

sudo -u apigee jcmd $(cat /opt/apigee/var/run/edge-message-processor/edge-message-processor.pid) GC.heap_dump /opt/apigee/var/rmp_heapdump_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).hprof

روگرفت نخ را دریافت کنید:

sudo -u apigee jcmd $(cat /opt/apigee/var/run/edge-message-processor/edge-message-processor.pid) Thread.print > /tmp/rmp_thread_print_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).tdump
تمام داده های تشخیصی را فشرده کنید
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* /opt/apigee/var/rmp_heapdump_*

502 Bad Gateway - EOF غیر منتظره در هدف

کتاب بازی

این بخش اطلاعات و راهنمایی هایی را در مورد برخی از روش های خاص ارائه می دهد که می توان برای عیب یابی و حل 502 Bad Gateway - Unexpected EOF At Target دنبال کرد:

پاسخ/پیام خطا کد خطا کتاب بازی
HTTP/1.1 502 Bad Gateway

{
   "fault": {
      "faultstring": "Unexpected EOF at target",
      "detail": {
           "errorcode": "messaging.adaptors.http.flow.UnexpectedEOFAtTarget"
       }
    }
}

messaging.adaptors.http.flow.UnexpectedEOFAtTarget 502 Bad Gateway EOF غیر منتظره

اطلاعات تشخیصی

اگر به کمک پشتیبانی Apigee Edge در 502 Bad Gateway - Unexpected EOF At Target نیاز دارید، سپس اطلاعات تشخیصی زیر را جمع‌آوری کرده و در مورد پشتیبانی به اشتراک بگذارید:

اطلاعات تشخیصی از کجا می توانم این اطلاعات را جمع آوری کنم؟ چگونه این اطلاعات را جمع آوری کنم؟
خروجی ابزار ردیابی درخواست‌های ناموفق API رابط کاربری لبه نحوه استفاده از Trace Tool
لاگ های روتر روتر
tar cvzf /tmp/router_logs_ORGNAME_ENVNAME_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-router/nginx/ORGNAME~ENVNAME.*

گزارش‌های پردازشگر پیام پردازشگر پیام
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system*

Tcpdumps پردازشگر پیام
sudo tcpdump -s 0 -i any host BACKENDSERVER_HOSTNAME -w /tmp/rmp_tcpdump_$(hostname).pcap
tar cvzf /tmp/rmp_tcpdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/$(hostname).pcap
تمام داده های تشخیصی را فشرده کنید روتر/پردازنده پیام
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_*

خطاهای دست دادن TLS

کتاب بازی

این بخش اطلاعات و راهنمایی هایی در مورد برخی از روش های خاص ارائه می دهد که می توان برای عیب یابی و رفع خرابی های دست دادن TLS/SSL دنبال کرد:

پیغام خطا کتاب بازی
Received fatal alert: handshake_failure خطاهای دست دادن TLS/SSL
Received fatal alert: bad_certificate SSL Handshake Failures - Bad Client Certificate

اطلاعات تشخیصی

اگر به کمک Apigee Edge در مورد خرابی های دست دادن TLS/SSL نیاز دارید، اطلاعات تشخیصی زیر را جمع آوری کرده و در مورد پشتیبانی به اشتراک بگذارید:

اطلاعات تشخیصی از کجا می توانم این اطلاعات را جمع آوری کنم؟ چگونه این اطلاعات را جمع آوری کنم؟
خروجی ابزار ردیابی درخواست‌های ناموفق API رابط کاربری لبه نحوه استفاده از Trace Tool
لاگ های روتر روتر
tar cvzf /tmp/router_logs_ORGNAME>_ENVNAME_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-router/nginx/ORGNAME~ENVNAME.*
گزارش‌های پردازشگر پیام پردازشگر پیام
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system*

خروجی فرمان OpenSSL پردازشگر پیام

سرور Backend غیر فعال SNI:

openssl s_client -connect BACKEND_SERVER_HOSTNAME:PORT -showcerts | tee /tmp/rmp_openssl_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).txt

سرور Backend فعال SNI:

openssl s_client -connect BACKEND_SERVER_HOSTNAME:PORT -server BACKEND_SERVER_HOSTNAME -showcerts | tee /tmp/rmp_openssl_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).txt
Tcpdumps پردازشگر پیام
sudo tcpdump -s 0 -i any host BACKEND_SERVER_HOSTNAME -w /tmp/$(hostname).pcap
tar cvzf /tmp/rmp_tcpdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/$(hostname).pcap
گواهینامه ها از فروشگاه کلید و Truststore پردازنده پیام سرور مدیریت

جزئیات گواهی را از Keystore دریافت کنید:

curl -v http://MANAGEMENT_SERVER_HOST:PORT/v1/organizations/ORGNAME/environments/ENVNAME/keystores/KEYSTORENAME/certs/CERTNAME -u USERNAME

جزئیات گواهی را از Truststore دریافت کنید:

curl -v http://MANAGEMENT_SERVER_HOSTPORT/v1/organizations/ORGNAME/environments/ENVNAME/keystores/TRUSTSTORENAME/certs/CERTNAME -u USERNAME
تمام داده های تشخیصی را فشرده کنید پردازشگر پیام
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_*