Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
Eventuali errori, problemi di latenza o risultati imprevisti osservati durante l'esecuzione delle richieste API
sono denominati problemi runtime.
Errori 4XX/5XX
Playbook
Questa sezione fornisce informazioni e indicazioni su alcune procedure specifiche che possono essere seguite per la risoluzione dei problemi e degli errori di runtime 4XX e 5XX.
| Messaggio/risposta di errore | Codice di errore | Playbook |
|---|---|---|
HTTP/1.1 500 Internal Server Error |
Varia in base all'errore effettivo |
500 Internal Server Error
e |
HTTP/1.1 503 Service Unavailable |
messaging.adaptors.http.flow.ServiceUnavailable |
503 - Servizio non disponibile |
HTTP/1.1 503 Service Unavailable |
messaging.adaptors.http.flow.NoActiveTargets |
503 Service Unavailable - NoActiveTargets |
HTTP/1.1 503 Service Unavailable |
messaging.adaptors.http.flow.NoActiveTargets
(La causa è dovuta a errori del controllo di integrità) |
503 Service Unavailable - NoActiveTargets Health Check Failures |
HTTP/1.1 503 Service Unavailable
(dal server di backend) |
messaging.adaptors.http.flow.ErrorResponseCode
|
503 - Servizio non disponibile - Server di backend |
HTTP/1.1 504 Gateway Timeout |
messaging.adaptors.http.flow.GatewayTimeout |
504 - Timeout del gateway |
HTTP/1.1 504 Gateway Timeout
(dal server di backend) |
messaging.adaptors.http.flow.ErrorResponseCode
|
504 Gateway Timeout - Backend Server |
Informazioni diagnostiche
Se hai bisogno dell'assistenza di Apigee Edge Support per 4XX errori di runtime
(come 400, 401, 404 e 499) o
errori 5XX (come 500, 503 e 504),
raccogli e condividi i seguenti log e informazioni diagnostici nel ticket di assistenza:
| Informazioni diagnostiche | Dove posso raccogliere queste informazioni? | Come faccio a raccogliere queste informazioni? |
|---|---|---|
| Output dello strumento di tracciamento che acquisisce le richieste API non riuscite | UI Edge | Come utilizzare lo strumento Trace |
| Log del router | Router |
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.* |
| Log del processore di messaggi | processore di messaggi |
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system* |
| Comprimi tutti i dati diagnostici |
>tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* |
Errore 400 Bad Request - Errore certificato SSL
Playbook
Questa sezione fornisce informazioni e indicazioni su alcune procedure specifiche che possono essere
seguite per la risoluzione dei problemi e la risoluzione di 400 Bad Request - SSL Certificate Error.
| Messaggio di errore | 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> |
Errore 400 Richiesta errata - Errore certificato SSL |
Informazioni diagnostiche
Se hai bisogno di assistenza da parte dell'assistenza Apigee Edge per 400 Bad Request - SSL Certificate
Error, raccogli le seguenti informazioni diagnostiche e condividile nella richiesta di assistenza:
| Informazioni diagnostiche | Dove posso raccogliere queste informazioni? | Come faccio a raccogliere queste informazioni? |
|---|---|---|
| Log del router | Router |
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 |
Router |
Acquisisci i pacchetti di rete utilizzando il comando sudo tcpdump -s 0 -i any host CLIENT_HOST_IP_ADDRESS -w /tmp/router_tcpdump_$(hostname).pcap Comprimi tar cvzf /tmp/router_tcpdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/router_tcpdump_$(hostname).pcap |
Tcpdumps |
Macchina client |
Acquisisci i pacchetti di rete utilizzando il comando tcpdump sulla macchina client: sudo tcpdump -s 0 -i any host VIRTUAL_HOST_ALIAS -w /tmp/client_tcpdump_$(hostname).pcap Comprimi tar cvzf /tmp/client_tcpdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/router_tcpdump_$(hostname).pcap |
| Comprimi tutti i dati diagnostici | Router |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* |
Errore 404 Impossibile identificare il proxy per l'host
Playbook
Questa sezione fornisce informazioni e indicazioni su alcune procedure specifiche che possono essere
seguite per la risoluzione dei problemi e la risoluzione dell'errore 404 Unable to identify proxy for host.
| Messaggio o descrizione dell'errore | Codice di errore | 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 Impossibile identificare il proxy per l'host |
Informazioni diagnostiche
Se hai bisogno dell'assistenza dell'assistenza Apigee Edge per l'errore 404 Unable to identify proxy for
host, raccogli le seguenti informazioni diagnostiche e condividile nella
richiesta di assistenza:
| Informazioni diagnostiche | Dove posso raccogliere queste informazioni? | Come faccio a raccogliere queste informazioni? |
|---|---|---|
| Output dell'API Deployments | Server di gestione |
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 |
| Output dell'API e dell'albero di classificazione | processore di messaggi |
Carica gli ambienti per un'organizzazione specifica: curl -s 0:8082/v1/runtime/organizations/ORGNAME/environments > /tmp/rmp_environments_list_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).txt Recupera le revisioni di cui è stato eseguito il deployment per un proxy API specifico: 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 Recupera l'albero di classificazione: curl -s 0:8082/v1/classification/tree > /tmp/rmp_classification_tree_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).json |
| Log del processore di messaggi | processore di messaggi |
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* |
| Dump dell'heap sui processori di messaggi | processore di messaggi |
Ottieni il dump dell'heap live: 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) Comprimi il dump dell'heap: 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 |
| Comprimi tutti i dati diagnostici | processore di messaggi |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/rmp_* |
502 Bad Gateway - no live upstreams while connecting to upstream
Playbook
Questa sezione fornisce informazioni e indicazioni su alcune procedure specifiche che possono essere
seguite per la risoluzione dei problemi e la risoluzione di 502 Bad Gateway - no live upstreams while
connecting to upstream.
| Problema | Messaggio di errore nei log | 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> |
Nei log degli errori di NGINX verrà visualizzato il seguente errore:
(/opt/apigee/var/log/edge-router/nginx/ORGNAME~ENVNAME._error_log)
|
502 Bad Gateway |
Informazioni diagnostiche
Se hai bisogno dell'assistenza dell'assistenza Apigee Edge
su 502 Bad Gateway - no live streams while connecting to upstream, raccogli
le seguenti informazioni diagnostiche e condividile nella richiesta di assistenza:
| Informazioni diagnostiche | Dove posso raccogliere queste informazioni? | Come faccio a raccogliere queste informazioni? |
|---|---|---|
| Log del router | Router |
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.* |
| Log del processore di messaggi | processore di messaggi |
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system* |
| Output principale, dump dell'heap e dump dei thread | processore di messaggi |
Ottieni l'output comando top: top -H -bn5 > /tmp/rmp_top_output_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).txt Recupera il dump dell'heap: 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 Recupera il dump dei thread: 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 |
| Comprimi tutti i dati diagnostici |
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
Questa sezione fornisce informazioni e indicazioni su alcune procedure specifiche che possono essere
seguite per la risoluzione dei problemi e la risoluzione di 502 Bad Gateway - Unexpected EOF At
Target:
| Messaggio/risposta di errore | Codice di errore | 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 Bad Gateway Unexpected EOF |
Informazioni diagnostiche
Se hai bisogno dell'assistenza di Apigee Edge Support su 502 Bad Gateway - Unexpected EOF At Target,
raccogli le seguenti informazioni diagnostiche e condividile nella richiesta di assistenza:
| Informazioni diagnostiche | Dove posso raccogliere queste informazioni? | Come faccio a raccogliere queste informazioni? |
|---|---|---|
| Output dello strumento di tracciamento che acquisisce le richieste API non riuscite | UI Edge | Come utilizzare lo strumento Trace |
| Log del router | Router |
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.* |
| Log del processore di messaggi | processore di messaggi |
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 |
processore di messaggi |
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 |
| Comprimi tutti i dati diagnostici | Router/processore di messaggi |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* |
Errori di handshake TLS
Playbook
Questa sezione fornisce informazioni e indicazioni su alcune procedure specifiche che possono essere seguite per la risoluzione dei problemi e la risoluzione degli errori di handshake TLS/SSL:
| Messaggio di errore | Playbook |
|---|---|
Received fatal alert: handshake_failure |
Errori di handshake TLS/SSL |
Received fatal alert: bad_certificate |
Errori di handshake SSL - Certificato client non valido |
Informazioni diagnostiche
Se hai bisogno dell'assistenza dell'assistenza Apigee Edge per gli errori di handshake TLS/SSL, raccogli le seguenti informazioni diagnostiche e condividile nella richiesta di assistenza:
| Informazioni diagnostiche | Dove posso raccogliere queste informazioni? | Come faccio a raccogliere queste informazioni? |
|---|---|---|
| Output dello strumento di tracciamento che acquisisce le richieste API non riuscite | UI Edge | Come utilizzare lo strumento Trace |
| Log del router | Router |
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.* |
| Log del processore di messaggi | processore di messaggi |
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system* |
| Output comando OpenSSL | processore di messaggi |
Server di backend non abilitato per SNI: openssl s_client -connect BACKEND_SERVER_HOSTNAME:PORT -showcerts | tee /tmp/rmp_openssl_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).txt Server di backend abilitato per 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 |
processore di messaggi |
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 |
| Certificati dall'archivio chiavi e dall'archivio attendibile del processore di messaggi | Server di gestione |
Recupera i dettagli del certificato dall'archivio chiavi: curl -v http://MANAGEMENT_SERVER_HOST:PORT/v1/organizations/ORGNAME/environments/ENVNAME/keystores/KEYSTORENAME/certs/CERTNAME -u USERNAME Recupera i dettagli del certificato dal Truststore: curl -v http://MANAGEMENT_SERVER_HOSTPORT/v1/organizations/ORGNAME/environments/ENVNAME/keystores/TRUSTSTORENAME/certs/CERTNAME -u USERNAME |
| Comprimi tutti i dati diagnostici | processore di messaggi |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* |