Vous consultez la documentation Apigee Edge.
Accédez à la documentation Apigee X.
Les erreurs, les problèmes de latence ou les résultats inattendus observés lors de l'exécution de vos requêtes d'API sont appelés problèmes runtime.
Erreurs 4XX/5XX
Playbook
Cette section fournit des informations et des conseils sur certaines procédures spécifiques qui peuvent être suivies pour résoudre les erreurs 4XX et 5XX d'exécution.
| Réponse/message d'erreur | Code d'erreur | Playbook |
|---|---|---|
HTTP/1.1 500 Internal Server Error |
Varie en fonction de l'erreur |
500 Erreur interne du serveur
et |
HTTP/1.1 503 Service Unavailable |
messaging.adaptors.http.flow.ServiceUnavailable |
503 Service indisponible |
HTTP/1.1 503 Service Unavailable |
messaging.adaptors.http.flow.NoActiveTargets |
503 Service indisponible – NoActiveTargets |
HTTP/1.1 503 Service Unavailable |
messaging.adaptors.http.flow.NoActiveTargets
(La cause est due à des échecs de vérification de l'état) |
503 Service indisponible : échecs de vérification de l'état NoActiveTargets |
HTTP/1.1 503 Service Unavailable
(depuis le serveur backend) |
messaging.adaptors.http.flow.ErrorResponseCode
|
503 Service indisponible – Serveur backend |
HTTP/1.1 504 Gateway Timeout |
messaging.adaptors.http.flow.GatewayTimeout |
504 Délai avant expiration de la passerelle |
HTTP/1.1 504 Gateway Timeout
(depuis le serveur backend) |
messaging.adaptors.http.flow.ErrorResponseCode
|
504 Délai avant expiration de la passerelle – Serveur de backend |
Informations de diagnostic
Si vous avez besoin de l'aide de l'assistance Apigee Edge concernant les erreurs d'exécution 4XX (telles que 400, 401, 404 et 499) ou les erreurs 5XX (telles que 500, 503 et 504), rassemblez et partagez les journaux de diagnostic et les informations suivants dans la demande d'assistance :
| Informations de diagnostic | Où puis-je trouver ces informations ? | Comment puis-je obtenir ces informations ? |
|---|---|---|
| Résultat de l'outil Trace capturant les requêtes API ayant échoué | Interface utilisateur Edge | Utiliser l'outil Trace |
| Journaux du routeur | Routeur |
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.* |
| Journaux du processeur de messages | Processeur de messages |
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system* |
| Compresser toutes les données de diagnostic |
>tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* |
Erreur 400 : requête incorrecte - Erreur de certificat SSL
Playbook
Cette section fournit des informations et des conseils sur certaines procédures spécifiques qui peuvent être suivies pour résoudre les problèmes liés à 400 Bad Request - SSL Certificate Error.
| Message d'erreur | 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> |
Erreur 400 Bad Request : erreur de certificat SSL |
Informations de diagnostic
Si vous avez besoin de l'aide de l'assistance Apigee Edge concernant 400 Bad Request - SSL Certificate
Error, rassemblez les informations de diagnostic suivantes et partagez-les dans la demande d'assistance :
| Informations de diagnostic | Où puis-je trouver ces informations ? | Comment puis-je obtenir ces informations ? |
|---|---|---|
| Journaux du routeur | Routeur |
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 |
Routeur |
Capturez les paquets réseau à l'aide de la commande sudo tcpdump -s 0 -i any host CLIENT_HOST_IP_ADDRESS -w /tmp/router_tcpdump_$(hostname).pcap Compressez le tar cvzf /tmp/router_tcpdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/router_tcpdump_$(hostname).pcap |
Tcpdumps |
Machine cliente |
Capturez les paquets réseau à l'aide de la commande tcpdump sur la machine cliente : sudo tcpdump -s 0 -i any host VIRTUAL_HOST_ALIAS -w /tmp/client_tcpdump_$(hostname).pcap Compressez le tar cvzf /tmp/client_tcpdumps_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/router_tcpdump_$(hostname).pcap |
| Compresser toutes les données de diagnostic | Routeur |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* |
Erreur 404 "Impossible d'identifier le proxy pour l'hôte"
Playbook
Cette section fournit des informations et des conseils sur certaines procédures spécifiques à suivre pour résoudre les problèmes et l'erreur 404 Unable to identify proxy for host.
| Message ou description de l'erreur | Code d'erreur | 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 Impossible d'identifier le proxy pour l'hôte |
Informations de diagnostic
Si vous avez besoin de l'aide de l'assistance Apigee Edge concernant l'erreur 404 Unable to identify proxy for
host, rassemblez les informations de diagnostic suivantes et partagez-les dans la demande d'assistance :
| Informations de diagnostic | Où puis-je trouver ces informations ? | Comment puis-je obtenir ces informations ? |
|---|---|---|
| Résultat de l'API Deployments | Serveur de gestion |
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 |
| Sortie de l'API et de l'arbre de classification | Processeur de messages |
Obtenez les environnements chargés pour une organisation spécifique : curl -s 0:8082/v1/runtime/organizations/ORGNAME/environments > /tmp/rmp_environments_list_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).txt Obtenez les révisions déployées pour un proxy d'API spécifique : 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 Obtenez l'arbre de classification : curl -s 0:8082/v1/classification/tree > /tmp/rmp_classification_tree_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).json |
| Journaux du processeur de messages | Processeur de messages |
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* |
| Empreintes de la mémoire sur les processeurs de messages | Processeur de messages |
Obtenez l'empreinte de la mémoire en direct : 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) Compressez l'empreinte de la mémoire : 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 |
| Compresser toutes les données de diagnostic | Processeur de messages |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/rmp_* |
502 : passerelle incorrecte – aucun flux en direct en amont lors de la connexion à l'amont
Playbook
Cette section fournit des informations et des conseils sur certaines procédures spécifiques qui peuvent être suivies pour résoudre les problèmes liés à 502 Bad Gateway - no live upstreams while
connecting to upstream.
| Problème | Message d'erreur dans les journaux | 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> |
L'erreur suivante s'affiche dans les journaux d'erreurs NGINX :
(/opt/apigee/var/log/edge-router/nginx/ORGNAME~ENVNAME._error_log)
|
502 Passerelle incorrecte |
Informations de diagnostic
Si vous avez besoin de l'aide de l'assistance Apigee Edge concernant 502 Bad Gateway - no live streams while connecting to upstream, rassemblez les informations de diagnostic suivantes et partagez-les dans la demande d'assistance :
| Informations de diagnostic | Où puis-je trouver ces informations ? | Comment puis-je obtenir ces informations ? |
|---|---|---|
| Journaux du routeur | Routeur |
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.* |
| Journaux du processeur de messages | Processeur de messages |
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system* |
| Sortie "top", vidage du tas et vidages de thread | Processeur de messages |
Obtenez le résultat de la commande top : top -H -bn5 > /tmp/rmp_top_output_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).txt Obtenez le fichier de vidage du tas : 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 Obtenez le vidage du 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 |
| Compresser toutes les données de diagnostic |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* /opt/apigee/var/rmp_heapdump_* |
502 Passerelle incorrecte – EOF inattendu au niveau de la cible
Playbook
Cette section fournit des informations et des conseils sur certaines procédures spécifiques qui peuvent être suivies pour dépanner et résoudre les problèmes liés à 502 Bad Gateway - Unexpected EOF At
Target :
| Réponse/message d'erreur | Code d'erreur | 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 Passerelle incorrecte : EOF inattendu |
Informations de diagnostic
Si vous avez besoin de l'aide de l'assistance Apigee Edge concernant 502 Bad Gateway - Unexpected EOF At Target, rassemblez les informations de diagnostic suivantes et partagez-les dans la demande d'assistance :
| Informations de diagnostic | Où puis-je trouver ces informations ? | Comment puis-je obtenir ces informations ? |
|---|---|---|
| Résultat de l'outil Trace capturant les requêtes API ayant échoué | Interface utilisateur Edge | Utiliser l'outil Trace |
| Journaux du routeur | Routeur |
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.* |
| Journaux du processeur de messages | Processeur de messages |
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 |
Processeur de messages |
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 |
| Compresser toutes les données de diagnostic | Routeur/Processeur de messages |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* |
Échecs du handshake TLS
Playbook
Cette section fournit des informations et des conseils sur certaines procédures spécifiques qui peuvent être suivies pour résoudre les échecs d'établissement de liaison TLS/SSL :
| Message d'erreur | Playbook |
|---|---|
Received fatal alert: handshake_failure |
Échecs du handshake TLS/SSL |
Received fatal alert: bad_certificate |
Échecs du handshake SSL : certificat client incorrect |
Informations de diagnostic
Si vous avez besoin de l'aide de l'assistance Apigee Edge pour résoudre les échecs d'établissement de liaison TLS/SSL, rassemblez les informations de diagnostic suivantes et partagez-les dans la demande d'assistance :
| Informations de diagnostic | Où puis-je trouver ces informations ? | Comment puis-je obtenir ces informations ? |
|---|---|---|
| Résultat de l'outil Trace capturant les requêtes API ayant échoué | Interface utilisateur Edge | Utiliser l'outil Trace |
| Journaux du routeur | Routeur |
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.* |
| Journaux du processeur de messages | Processeur de messages |
tar cvzf /tmp/rmp_systemlogs_$(hostname)_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /opt/apigee/var/log/edge-message-processor/logs/system* |
| Résultat de la commande OpenSSL | Processeur de messages |
Serveur backend sans SNI : openssl s_client -connect BACKEND_SERVER_HOSTNAME:PORT -showcerts | tee /tmp/rmp_openssl_$(hostname)-$(date +%Y.%m.%d_%H.%M.%S).txt Serveur backend avec SNI activé : 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 |
Processeur de messages |
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 |
| Certificats du keystore et du truststore du processeur de messages | Serveur de gestion |
Obtenez les détails du certificat à partir du keystore : curl -v http://MANAGEMENT_SERVER_HOST:PORT/v1/organizations/ORGNAME/environments/ENVNAME/keystores/KEYSTORENAME/certs/CERTNAME -u USERNAME Obtenez les détails du certificat à partir du Truststore : curl -v http://MANAGEMENT_SERVER_HOSTPORT/v1/organizations/ORGNAME/environments/ENVNAME/keystores/TRUSTSTORENAME/certs/CERTNAME -u USERNAME |
| Compresser toutes les données de diagnostic | Processeur de messages |
tar -cvzf /tmp/data_CASE#_$(hostname).tar.gz /tmp/router* /tmp/rmp_* |