Vấn đề về thời gian chạy

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến Tài liệu về Apigee X.
thông tin

Mọi lỗi, vấn đề về độ trễ hoặc kết quả không mong muốn nhận thấy được trong quá trình thực thi API của bạn được gọi là vấn đề runtime.

Lỗi 4XX/5XX

Cẩm nang

Phần này cung cấp thông tin và hướng dẫn về một số quy trình cụ thể có thể tiếp theo để khắc phục sự cố và giải quyết lỗi thời gian chạy 4XX5XX.

Phản hồi/thông báo lỗi Mã lỗi Cẩm nang
HTTP/1.1 500 Internal Server Error Thay đổi theo lỗi thực tế 500 Lỗi máy chủ nội bộ

500 Lỗi máy chủ nội bộ – Đã bật tính năng truyền trực tuyến

HTTP/1.1 503 Service Unavailable messaging.adaptors.http.flow.ServiceUnavailable 503 Dịch vụ không hoạt động
HTTP/1.1 503 Service Unavailable messaging.adaptors.http.flow.NoActiveTargets 503 Dịch vụ không hoạt động – Không có mục tiêu đang hoạt động
HTTP/1.1 503 Service Unavailable messaging.adaptors.http.flow.NoActiveTargets

(Nguyên nhân là do lỗi kiểm tra tình trạng)

Dịch vụ 503 không hoạt động – Lỗi kiểm tra tình trạng NoActiveTargets
HTTP/1.1 503 Service Unavailable

(từ máy chủ phụ trợ)

messaging.adaptors.http.flow.ErrorResponseCode 503 Dịch vụ không hoạt động – Máy chủ phụ trợ
HTTP/1.1 504 Gateway Timeout messaging.adaptors.http.flow.GatewayTimeout 504 Cổng vào không nhận được phản hồi kịp thời trong thời gian chờ
HTTP/1.1 504 Gateway Timeout

(từ máy chủ phụ trợ)

messaging.adaptors.http.flow.ErrorResponseCode 504 Cổng vào không nhận được phản hồi kịp thời – Máy chủ phụ trợ

Thông tin chẩn đoán

Nếu bạn cần Hỗ trợ Apigee Edge về 4XX lỗi thời gian chạy (chẳng hạn như 400, 401, 404499) hoặc 5XX (chẳng hạn như lỗi 500, 503504), thì hãy thu thập và chia sẻ nhật ký chẩn đoán cũng như thông tin sau đây trong yêu cầu hỗ trợ:

Thông tin chẩn đoán Tôi có thể thu thập thông tin này ở đâu? Làm cách nào để thu thập thông tin này?
Kết quả đầu ra của công cụ theo dõi ghi lại các yêu cầu API không thành công Giao diện người dùng Edge Cách sử dụng Công cụ theo dõi
Nhật ký bộ định tuyến Bộ định tuyến
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.*

Nhật ký Trình xử lý thư Trình xử lý tin nhắn
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system*

Nén tất cả dữ liệu chẩn đoán
>tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_*

Lỗi yêu cầu không hợp lệ 400 – Lỗi chứng chỉ SSL

Cẩm nang

Phần này cung cấp thông tin và hướng dẫn về một số quy trình cụ thể có thể để khắc phục sự cố và giải quyết 400 Bad Request - SSL Certificate Error.

Thông báo lỗi Cẩm nang
<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 Lỗi yêu cầu không hợp lệ – Lỗi chứng chỉ SSL

Thông tin chẩn đoán

Nếu bạn cần Hỗ trợ Apigee Edge trên 400 Bad Request - SSL Certificate Error, hãy thu thập thông tin chẩn đoán sau đây và chia sẻ thông tin đó trong yêu cầu hỗ trợ:

Thông tin chẩn đoán Tôi có thể thu thập thông tin này ở đâu? Làm cách nào để thu thập thông tin này?
Nhật ký bộ định tuyến Bộ định tuyến
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 Bộ định tuyến

Ghi lại gói mạng bằng lệnh tcpdump trên máy Bộ định tuyến:

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

Nén tcpdump:

tar cvzf /tmp/router_tcpdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/router_tcpdump_$(hostname).pcap
Tcpdumps Máy khách

Ghi lại gói mạng bằng lệnh tcpdump trên máy khách:

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

Nén tcpdump:

tar cvzf /tmp/client_tcpdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/router_tcpdump_$(hostname).pcap
Nén tất cả dữ liệu chẩn đoán Bộ định tuyến
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router*

404 Không thể xác định proxy cho lỗi máy chủ lưu trữ

Cẩm nang

Phần này cung cấp thông tin và hướng dẫn về một số quy trình cụ thể có thể thực hiện theo để khắc phục sự cố và giải quyết 404 Unable to identify proxy for host .

Thông báo lỗi hoặc nội dung mô tả Mã lỗi Cẩm nang
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 Không xác định được proxy cho máy chủ

Thông tin chẩn đoán

Nếu bạn cần Hỗ trợ Apigee Edge khi gặp lỗi 404 Unable to identify proxy for host, hãy thu thập thông tin chẩn đoán sau đây và chia sẻ thông tin đó trong yêu cầu hỗ trợ:

Thông tin chẩn đoán Tôi có thể thu thập thông tin này ở đâu? Làm cách nào để thu thập thông tin này?
Triển khai kết quả API Máy chủ quản lý
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
Kết quả về API và Cây phân loại Trình xử lý tin nhắn

Tải các môi trường cho một tổ chức cụ thể:

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

Triển khai các bản sửa đổi cho một Proxy API cụ thể:

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

Lấy cây phân loại:

curl -s 0:8082/v1/classification/tree > /tmp/rmp_classification_tree_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).json
Nhật ký Trình xử lý thư Trình xử lý tin nhắn
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*
Tệp báo lỗi trên Bộ xử lý thư Trình xử lý tin nhắn

Lấy tệp báo lỗi trực tiếp:

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)

Nén tệp báo lỗi:

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
Nén tất cả dữ liệu chẩn đoán Trình xử lý tin nhắn
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/rmp_* 

502 Bad Gateway – không phát trực tiếp ở thượng nguồn trong khi kết nối với thượng nguồn

Cẩm nang

Phần này cung cấp thông tin và hướng dẫn về một số quy trình cụ thể có thể để khắc phục sự cố và giải quyết 502 Bad Gateway - no live upstreams while connecting to upstream.

Vấn đề Thông báo lỗi trong nhật ký Cẩm nang
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>

Bạn sẽ thấy lỗi sau trong nhật ký lỗi 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 Cổng vào không hợp lệ

Thông tin chẩn đoán

Nếu bạn cần hỗ trợ từ Bộ phận hỗ trợ Apigee Edge trên 502 Bad Gateway - no live streams while connecting to upstream, sau đó thu thập thông tin chẩn đoán sau đây và chia sẻ thông tin đó trong yêu cầu hỗ trợ:

Thông tin chẩn đoán Tôi có thể thu thập thông tin này ở đâu? Làm cách nào để thu thập thông tin này?
Nhật ký bộ định tuyến Bộ định tuyến
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.*
Nhật ký Trình xử lý thư Trình xử lý tin nhắn
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system*

Kết quả đầu ra, tệp báo lỗi và tệp kết xuất luồng Trình xử lý tin nhắn

Lấy kết quả lệnh trên cùng:

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

Lấy tệp báo lỗi:

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

Lấy tệp kết xuất luồng:

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
Nén tất cả dữ liệu chẩn đoán
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* /opt/apigee/var/rmp_heapdump_*

502 Cổng vào không hợp lệ – EOF không mong muốn tại mục tiêu

Cẩm nang

Phần này cung cấp thông tin và hướng dẫn về một số quy trình cụ thể có thể sau đây để khắc phục sự cố và giải quyết 502 Bad Gateway - Unexpected EOF At Target:

Phản hồi/thông báo lỗi Mã lỗi Cẩm nang
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 cổng không mong muốn

Thông tin chẩn đoán

Nếu bạn cần Hỗ trợ Apigee Edge trên 502 Bad Gateway - Unexpected EOF At Target, sau đó thu thập thông tin chẩn đoán sau đây và chia sẻ trong yêu cầu hỗ trợ:

Thông tin chẩn đoán Tôi có thể thu thập thông tin này ở đâu? Làm cách nào để thu thập thông tin này?
Kết quả đầu ra của công cụ theo dõi ghi lại các yêu cầu API không thành công Giao diện người dùng Edge Cách sử dụng Công cụ theo dõi
Nhật ký bộ định tuyến Bộ định tuyến
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.*

Nhật ký Trình xử lý thư Trình xử lý tin nhắn
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 Trình xử lý tin nhắn
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
Nén tất cả dữ liệu chẩn đoán Bộ định tuyến/bộ xử lý thư
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_*

Lỗi bắt tay TLS

Cẩm nang

Phần này cung cấp thông tin và hướng dẫn về một số quy trình cụ thể có thể các bước để khắc phục sự cố và giải quyết lỗi bắt tay TLS/SSL:

Thông báo lỗi Cẩm nang
Received fatal alert: handshake_failure Không thể bắt tay TLS/SSL
Received fatal alert: bad_certificate Không bắt tay được SSL – Chứng chỉ ứng dụng không hợp lệ

Thông tin chẩn đoán

Nếu bạn cần hỗ trợ từ Bộ phận hỗ trợ Apigee Edge về lỗi bắt tay TLS/SSL, hãy thu thập sau đây là thông tin chẩn đoán và chia sẻ thông tin đó trong yêu cầu hỗ trợ:

Thông tin chẩn đoán Tôi có thể thu thập thông tin này ở đâu? Làm cách nào để thu thập thông tin này?
Kết quả đầu ra của công cụ theo dõi ghi lại các yêu cầu API không thành công Giao diện người dùng Edge Cách sử dụng Công cụ theo dõi
Nhật ký bộ định tuyến Bộ định tuyến
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.*
Nhật ký Trình xử lý thư Trình xử lý tin nhắn
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system*

Kết quả của lệnh OpenSSL Trình xử lý tin nhắn

Máy chủ phụ trợ không bật SNI:

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

Máy chủ phụ trợ đã bật 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 Trình xử lý tin nhắn
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
Chứng chỉ từ kho khoá và kho tin cậy của Trình xử lý thư Máy chủ quản lý

Lấy thông tin chi tiết về chứng chỉ từ Kho khoá:

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

Lấy thông tin chi tiết về chứng chỉ từ Truststore:

curl -v http://MANAGEMENT_SERVER_HOSTPORT/v1/organizations/ORGNAME/environments/ENVNAME/keystores/TRUSTSTORENAME/certs/CERTNAME -u USERNAME
Nén tất cả dữ liệu chẩn đoán Trình xử lý tin nhắn
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_*