Cette page fournit des informations générales de dépannage et des liens vers d'autres pages pour obtenir des informations supplémentaires.
Erreurs lors du déploiement de la configuration Cloud Endpoints
Si la commande gcloud endpoints services deploy
affiche un message d'erreur, consultez la page Résoudre des problèmes de déploiement de la configuration Endpoints pour obtenir des informations sur la façon de résoudre l'erreur.
Erreurs lors du déploiement du backend de l'API
Le déploiement de votre API et du proxy Extensible Service Proxy (ESP) sur un backend Google Cloud dépend de la plate-forme utilisée. Consultez les guides de dépannage suivants pour en savoir plus :
Erreurs de réponse
Lorsque vous envoyez une requête à l'API et recevez une réponse d'erreur, consultez la page Dépanner des erreurs de réponse pour en savoir plus sur le dépannage de l'erreur en question.
Vérifier les services requis
Vérifier les services requis
Endpoints et ESP requièrent au minimum l'activation des services Google suivants :Nom | Titre |
---|---|
servicemanagement.googleapis.com |
API Service Management |
servicecontrol.googleapis.com |
API Service Control |
endpoints.googleapis.com |
Google Cloud Endpoints |
Dans la plupart des cas, la commande gcloud endpoints services deploy
permet d'activer ces services requis. Toutefois, bien que la commande gcloud
ait abouti, elle n'active pas les services requis dans les cas suivants :
Vous avez utilisé une application tierce telle que Terraform et vous n'incluez pas ces services.
Vous avez déployé la configuration Endpoints dans un projet Google Cloud existant dans lequel ces services étaient explicitement désactivés.
Utilisez la commande suivante pour vérifier que les services nécessaires sont activés :
gcloud services list
Si les services requis ne sont pas répertoriés, activez-les :
gcloud services enable servicemanagement.googleapis.comgcloud services enable servicecontrol.googleapis.com
gcloud services enable endpoints.googleapis.com
Activez également votre service Endpoints :
gcloud services enable ENDPOINTS_SERVICE_NAME
Pour déterminer la valeur de ENDPOINTS_SERVICE_NAME, vous pouvez effectuer l'une des opérations suivantes :
Après avoir déployé la configuration Endpoints, accédez à la page Endpoints de Cloud Console. La liste des valeurs ENDPOINTS_SERVICE_NAME possibles s'affiche dans la colonne Nom du service.
Pour OpenAPI, ENDPOINTS_SERVICE_NAME correspond à ce que vous avez spécifié dans le champ
host
de votre spécification OpenAPI. Pour gRPC, ENDPOINTS_SERVICE_NAME correspond à ce que vous avez spécifié dans le champname
de votre configuration Endpoints gRPC.
Pour en savoir plus sur les commandes gcloud
, consultez la page Services gcloud
.
Vérifier les autorisations requises
L'instance exécutant Extensible Service Proxy nécessite des autorisations pour appeler Service Management et ServiceControl.
Pour ESP déployé sur Cloud Run, consultez la page Créer une image ESPv2 dans Cloud Run pour en savoir plus.
Pour ESP déployé sur Compute Engine, consultez la page Vérifier le tutoriel des autorisations requises dans Compute Engine pour plus de détails.
Pour ESP déployé sur GKE, consultez la page Vérifier le tutoriel des autorisations requises dans GKE pour plus de détails.
Vérifier les informations de débogage
L'exécution de la Google Cloud CLI avec les détails de débogage permet le débogage.
gcloud --verbosity=debug COMMAND
Cette commande permet à la Google Cloud CLI d'imprimer un journal détaillé de l'erreur. Suivant la commande exécutée, le résultat affiché présente des informations relatives à la requête ou à la réponse issue du serveur.
Activer un service
Vous pouvez vérifier si un service est activé à l'aide de gcloud
.
gcloud services list
Pour afficher la configuration d'un service particulier, utilisez la commande suivante :
gcloud endpoints services describe SERVICE_NAME
Échec du proxy OAuth mais aboutissement des requêtes
Assurez-vous que votre document OpenAPI comporte une section security
contenant votre définition OAuth. Un fichier de spécification type est disponible dans l'exemple de démarrage sur GitHub.