Diese Seite enthält allgemeine Informationen zur Fehlerbehebung und Links zu anderen Seiten mit zusätzlichen Informationen.
Fehler bei der Bereitstellung der Endpoints-Konfiguration
Wenn Sie eine Fehlermeldung über den Befehl gcloud endpoints services deploy
erhalten haben, finden Sie unter Fehlerbehebung bei der Bereitstellung von Endpoints-Konfigurationen Informationen zur Behebung des Fehlers.
Fehler bei der Bereitstellung des API-Back-Ends
Die Bereitstellung Ihrer API und des Extensible Service Proxy (ESP) auf einem Das Google Cloud-Back-End ist plattformabhängig. Entsprechende Informationen finden Sie in den folgenden Anleitungen zur Fehlerbehebung:
Antwortfehler
Wenn Sie eine Anfrage an Ihre API senden und einen Fehler als Antwort erhalten, finden Sie unter Fehlerbehebung bei Antwortfehlern Informationen zum Beheben des Fehlers.
Erforderliche Dienste prüfen
Erforderliche Dienste prüfen
Für Endpoints und ESP müssen mindestens die folgenden Google-Dienste aktiviert sein:Name | Titel |
---|---|
servicemanagement.googleapis.com |
Service Management API |
servicecontrol.googleapis.com |
Service Control API |
endpoints.googleapis.com |
Google Cloud Endpoints |
In der Regel werden die erforderlichen Dienste mit dem Befehl gcloud endpoints services deploy
aktiviert. Unter folgenden Umständen kann es vorkommen, dass der Befehl gcloud
erfolgreich ausgeführt wird, die erforderlichen Dienste jedoch nicht aktiviert werden:
Wenn Sie eine Drittanbieteranwendung wie Terraform verwendet haben und Sie diese Dienste nicht hinzufügen.
Wenn Sie die Endpoints-Konfiguration für ein vorhandenes Google Cloud-Projekt bereitgestellt haben, in dem diese Dienste explizit deaktiviert wurden.
Prüfen Sie mit dem folgenden Befehl, ob die erforderlichen Dienste aktiviert sind:
gcloud services list
Wenn die erforderlichen Dienste nicht aufgeführt sind, müssen Sie sie aktivieren:
gcloud services enable servicemanagement.googleapis.comgcloud services enable servicecontrol.googleapis.com
gcloud services enable endpoints.googleapis.com
Aktivieren Sie auch Ihren Endpoints-Dienst:
gcloud services enable ENDPOINTS_SERVICE_NAME
Zum Ermitteln des ENDPOINTS_SERVICE_NAME haben Sie folgende Möglichkeiten:
Rufen Sie nach dem Bereitstellen der Endpoints-Konfiguration in der Cloud Console die Seite Endpunkte auf. Die Liste der möglichen ENDPOINTS_SERVICE_NAME wird in der Spalte Dienstname angezeigt.
Bei OpenAPI ist ENDPOINTS_SERVICE_NAME der Wert, den Sie im Feld
host
Ihrer OpenAPI-Spezifikation angegeben haben. Bei gRPC ist der ENDPOINTS_SERVICE_NAME das, was Sie im Feldname
Ihrer gRPC-Endpoints-Konfiguration angegeben haben.
Weitere Informationen zu den gcloud
-Befehlen finden Sie unter gcloud
-Dienste.
Erforderliche Berechtigungen prüfen
Die Instanz, auf der der Extensible Service Proxy ausgeführt wird, benötigt die entsprechenden Berechtigungen, um Service Management und Service Control aufzurufen.
Informationen zu ESP, die in Cloud Run bereitgestellt werden, finden Sie in der Anleitung „Neues ESPv2-Image in Cloud Run erstellen“.
Weitere Informationen zu ESP, der in Compute Engine bereitgestellt wird, finden Sie in der Anleitung Erforderliche Berechtigungen in Compute Engine prüfen.
Weitere Informationen zu ESP, der in GKE bereitgestellt wird, finden Sie in der Anleitung Erforderliche Berechtigungen in GKE prüfen.
Debugging-Informationen prüfen
Wenn Sie die Google Cloud CLI mit ausführlichen Fehlerbehebungsfunktionen ausführen, Debugging.
gcloud --verbosity=debug COMMAND
Dieser Befehl bewirkt, dass die Google Cloud CLI ein ausführliches Log des Fehler. Die Ausgabe kann je nach ausgeführtem Befehl Anfrage- und Antwortinformationen vom Server beinhalten.
Dienst aktivieren
Sie können prüfen, ob ein Dienst mit gcloud
aktiviert wird.
gcloud services list
Rufen Sie die Konfiguration für einen bestimmten Dienst mit folgendem Befehl auf:
gcloud endpoints services describe SERVICE_NAME
Proxy OAuth schlägt fehl und fordert dennoch einen Pass an
Prüfen Sie, ob der Abschnitt security
mit Ihrer OAuth-Definition im OpenAPI-Dokument vorhanden ist. Eine Beispielspezifikationsdatei steht im Getting-Started-Beispiel auf GitHub zur Verfügung.