คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ
Apigee X info
ข้อผิดพลาด ปัญหาความหน่วง หรือผลลัพธ์ที่ไม่คาดคิดที่พบระหว่างการดำเนินการคำขอ API
จะเรียกว่าปัญหา runtime
ข้อผิดพลาด 4XX/5XX
Playbook
ส่วนนี้จะให้ข้อมูลและคำแนะนำเกี่ยวกับขั้นตอนที่เฉพาะเจาะจงบางอย่างที่สามารถทำตามเพื่อแก้ปัญหาและแก้ไขข้อผิดพลาดรันไทม์ 4XX และ 5XX
| การตอบกลับ/ข้อความแสดงข้อผิดพลาด | รหัสข้อผิดพลาด | Playbook |
|---|---|---|
HTTP/1.1 500 Internal Server Error |
แตกต่างกันไปตามข้อผิดพลาดจริง |
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 ไม่พร้อมให้บริการ - เซิร์ฟเวอร์แบ็กเอนด์ |
HTTP/1.1 504 Gateway Timeout |
messaging.adaptors.http.flow.GatewayTimeout |
504 เกตเวย์หมดเวลา |
HTTP/1.1 504 Gateway Timeout
(จากเซิร์ฟเวอร์แบ็กเอนด์) |
messaging.adaptors.http.flow.ErrorResponseCode
|
504 เกตเวย์หมดเวลา - เซิร์ฟเวอร์แบ็กเอนด์ |
ข้อมูลการวินิจฉัย
หากต้องการความช่วยเหลือจากทีมสนับสนุน Apigee Edge เกี่ยวกับ4XX ข้อผิดพลาดขณะรันไทม์
(เช่น 400, 401, 404 และ 499) หรือ
ข้อผิดพลาด 5XX (เช่น 500, 503 และ 504)
ให้รวบรวมและแชร์บันทึกการวินิจฉัยและข้อมูลต่อไปนี้ในเคสการสนับสนุน
| ข้อมูลการวินิจฉัย | ฉันจะรวบรวมข้อมูลนี้ได้จากที่ไหน | ฉันจะรวบรวมข้อมูลนี้ได้อย่างไร |
|---|---|---|
| เครื่องมือติดตามเอาต์พุตจับคำขอ API ที่ล้มเหลว | UI ของ 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.* |
| บันทึกของ Message Processor | Message Processor |
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
Playbook
ส่วนนี้จะให้ข้อมูลและคำแนะนำเกี่ยวกับขั้นตอนเฉพาะบางอย่างที่สามารถทำตามเพื่อแก้ปัญหาและแก้ไข 400 Bad Request - SSL Certificate Error
| ข้อความแสดงข้อผิดพลาด | Playbook |
|---|---|
<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 Bad Request - ข้อผิดพลาดเกี่ยวกับใบรับรอง SSL |
ข้อมูลการวินิจฉัย
หากต้องการความช่วยเหลือจากทีมสนับสนุนของ Apigee Edge ใน 400 Bad Request - SSL Certificate
Error ให้รวบรวมข้อมูลการวินิจฉัยต่อไปนี้และแชร์ในเคสขอรับความช่วยเหลือ
| ข้อมูลการวินิจฉัย | ฉันจะรวบรวมข้อมูลนี้ได้จากที่ไหน | ฉันจะรวบรวมข้อมูลนี้ได้อย่างไร |
|---|---|---|
| บันทึกของเราเตอร์ | เราเตอร์ |
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 |
เราเตอร์ |
ดักจับแพ็กเก็ตเครือข่ายโดยใช้คำสั่ง sudo tcpdump -s 0 -i any host CLIENT_HOST_IP_ADDRESS -w /tmp/router_tcpdump_$(hostname).pcap บีบอัด 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 บีบอัด 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 ระบุพร็อกซีสำหรับข้อผิดพลาดของโฮสต์ไม่ได้
Playbook
ส่วนนี้จะให้ข้อมูลและคำแนะนำเกี่ยวกับขั้นตอนเฉพาะบางอย่างที่สามารถทำตามเพื่อแก้ปัญหาและแก้ไขข้อผิดพลาด 404 Unable to identify proxy for host
ได้
| ข้อความแสดงข้อผิดพลาดหรือคำอธิบาย | รหัสข้อผิดพลาด | Playbook |
|---|---|---|
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 และโครงสร้างการจัดประเภท | Message Processor |
โหลดสภาพแวดล้อมสำหรับองค์กรที่เฉพาะเจาะจงโดยทำดังนี้ 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 |
| บันทึกของ Message Processor | Message Processor |
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* |
| ฮีปดัมพ์ใน Message Processor | Message Processor |
รับฮีปดัมป์แบบเรียลไทม์ 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 |
| บีบอัดข้อมูลการวินิจฉัยทั้งหมด | Message Processor |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/rmp_* |
502 เกตเวย์ไม่ถูกต้อง - ไม่มีสตรีมต้นทางที่ใช้งานอยู่ขณะเชื่อมต่อกับสตรีมต้นทาง
Playbook
ส่วนนี้จะให้ข้อมูลและคำแนะนำเกี่ยวกับขั้นตอนเฉพาะบางอย่างที่สามารถทำตามเพื่อแก้ปัญหาและแก้ไข 502 Bad Gateway - no live upstreams while
connecting to upstream
| ปัญหา | ข้อความแสดงข้อผิดพลาดในบันทึก | Playbook |
|---|---|---|
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)
|
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.* |
| บันทึกของ Message Processor | Message Processor |
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system* |
| เอาต์พุตสูงสุด ฮีปดัมป์ และเทรดดัมป์ | Message Processor |
รับเอาต์พุตจากคำสั่ง top 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 วิธีรับ Thread Dump 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 - Unexpected EOF At Target
Playbook
ส่วนนี้จะให้ข้อมูลและคำแนะนำเกี่ยวกับขั้นตอนเฉพาะบางอย่างที่สามารถทำตามเพื่อแก้ปัญหาและแก้ไข502 Bad Gateway - Unexpected EOF At
Targetได้
| การตอบกลับ/ข้อความแสดงข้อผิดพลาด | รหัสข้อผิดพลาด | Playbook |
|---|---|---|
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 เกตเวย์ไม่ถูกต้อง EOF ที่ไม่คาดคิด |
ข้อมูลการวินิจฉัย
หากต้องการความช่วยเหลือจากทีมสนับสนุนของ Apigee Edge ใน 502 Bad Gateway - Unexpected EOF At Target
โปรดรวบรวมข้อมูลการวินิจฉัยต่อไปนี้และแชร์ในเคสขอรับความช่วยเหลือ
| ข้อมูลการวินิจฉัย | ฉันจะรวบรวมข้อมูลนี้ได้จากที่ไหน | ฉันจะรวบรวมข้อมูลนี้ได้อย่างไร |
|---|---|---|
| เครื่องมือติดตามเอาต์พุตจับคำขอ API ที่ล้มเหลว | UI ของ 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.* |
| บันทึกของ Message Processor | Message Processor |
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 |
Message Processor |
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 |
| บีบอัดข้อมูลการวินิจฉัยทั้งหมด | เราเตอร์/Message Processor |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* |
แฮนด์เชค TLS ไม่สำเร็จ
Playbook
ส่วนนี้จะให้ข้อมูลและคำแนะนำเกี่ยวกับขั้นตอนที่เฉพาะเจาะจงบางอย่างที่สามารถทำตามเพื่อแก้ปัญหาและแก้ไขข้อผิดพลาดในการแฮนด์เชค TLS/SSL ได้
| ข้อความแสดงข้อผิดพลาด | Playbook |
|---|---|
Received fatal alert: handshake_failure |
แฮนด์เชค TLS/SSL ไม่สำเร็จ |
Received fatal alert: bad_certificate |
แฮนด์เชค SSL ไม่สำเร็จ - ใบรับรองไคลเอ็นต์ไม่ถูกต้อง |
ข้อมูลการวินิจฉัย
หากต้องการความช่วยเหลือจากทีมสนับสนุนของ Apigee Edge เกี่ยวกับแฮนด์เชค TLS/SSL ที่ล้มเหลว ให้รวบรวม ข้อมูลการวินิจฉัยต่อไปนี้และแชร์ในเคสขอรับความช่วยเหลือ
| ข้อมูลการวินิจฉัย | ฉันจะรวบรวมข้อมูลนี้ได้จากที่ไหน | ฉันจะรวบรวมข้อมูลนี้ได้อย่างไร |
|---|---|---|
| เครื่องมือติดตามเอาต์พุตจับคำขอ API ที่ล้มเหลว | UI ของ 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.* |
| บันทึกของ Message Processor | Message Processor |
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 | Message Processor |
เซิร์ฟเวอร์แบ็กเอนด์ที่ไม่ได้เปิดใช้ SNI openssl s_client -connect BACKEND_SERVER_HOSTNAME:PORT -showcerts | tee /tmp/rmp_openssl_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).txt เซิร์ฟเวอร์แบ็กเอนด์ที่เปิดใช้ 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 |
Message Processor |
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 ของ Message Processor | เซิร์ฟเวอร์การจัดการ |
รับรายละเอียดใบรับรองจากคีย์สโตร์ 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 |
| บีบอัดข้อมูลการวินิจฉัยทั้งหมด | Message Processor |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* |