Se non ricevi una risposta corretta da una richiesta all'API Cloud Endpoints Frameworks, puoi utilizzare Cloud Logging nella console Google Cloud per risolvere i problemi.
Visualizzazione dei log
Nella console Google Cloud, vai alla pagina Logging > Esplora log.
Dall'elenco a discesa del progetto nella parte superiore della pagina, seleziona il progetto Google Cloud in cui hai creato l'API.
Seleziona Applicazione GAE e Tutti i log.
Modifica l'intervallo di tempo finché non viene visualizzata una riga che mostra un errore.
Fai clic su Espandi tutto per visualizzare l'intero log relativo all'errore.
La seguente sezione fornisce informazioni sulla risoluzione dei problemi relativi a messaggi di errore specifici. Se non riesci a risolvere il problema, copia una delle voci di log che mostrano l'errore e incollala in un file di testo. Includi il log in qualsiasi comunicazione con Google.
503 Service Unavailable
App Engine potrebbe impiegare alcuni minuti per rispondere correttamente alle richieste. Se invii una richiesta e viene visualizzato un errore 503
, attendi qualche minuto e riprova. Se continui a non ottenere una risposta corretta, controlla i log di Cloud Logging. Di seguito sono riportati alcuni messaggi di errore che potresti visualizzare nei log di Cloud Logging.
Messaggio di errore | Risoluzione dei problemi |
---|---|
Nessun servizio YOUR_PROJECT_ID.appspot.com trovato o autorizzazione negata. Se questo è un nuovo servizio Endpoints, assicurati di aver eseguito il deployment della configurazione del servizio utilizzando gcloud.
|
Endpoints Frameworks per Python registra questo errore quando non riesce a caricare
la configurazione del servizio per il servizio che hai specificato nel
file app.yaml . Questo errore può verificarsi se non hai eseguito il deployment del documento OpenAPI per l'API utilizzando gcloud endpoints services
deploy o se l'API Service Management non è abilitata. Quando esegui il deployment del documento OpenAPI per la tua API, il comando gcloud abilita automaticamente quanto segue:
|
È stato trovato il servizio YOUR_PROJECT_ID.appspot.com , ma
non è stata trovata alcuna configurazione del servizio per la versione
SERVICE_CONFIG_ID .
|
Endpoints Frameworks per Python registra questo errore quando non riesce a trovare l'ID di configurazione del servizio che hai specificato per ENDPOINTS_SERVICE_VERSION nel file app.yaml .
Per correggere questo errore:
|
404 Not Found
Se di recente hai eseguito la migrazione a Endpoints Frameworks versione 2 e ricevi il messaggio di errore 404 Not Found
, consulta le seguenti sezioni per risolvere il problema:
Problemi con l'esempio Invoke-WebRequest
In alcune versioni di Windows PowerShell, l'esempio Invoke-WebRequest
nei tutorial ha esito negativo. Abbiamo anche ricevuto una segnalazione secondo cui la risposta conteneva un elenco di byte non firmati che dovevano essere convertiti in caratteri. Se l'esempio Invoke-WebRequest
non ha restituito il risultato previsto, prova a inviare la richiesta utilizzando un'altra applicazione. Di seguito sono riportati alcuni suggerimenti:
- Avvia Cloud Shell e segui i passaggi Linux del tutorial che stavi utilizzando per inviare la richiesta.
Utilizza un'applicazione di terze parti, come l'estensione del browser Chrome Postman, offerta da
www.getpostman.com
. Quando crei la richiesta in Postman:- Seleziona
POST
come verbo HTTP. - Per l'intestazione, seleziona la chiave
content-type
e il valoreapplication/json
. - Per il corpo, inserisci:
{"message":"hello world"}
Inserisci l'URL dell'applicazione di esempio. Ad esempio:
https://example-project-12345.appspot.com/_ah/api/echo/v1/echo
- Seleziona
Scarica e installa
curl
, che devi eseguire nel prompt dei comandi. Poiché Windows non gestisce le virgolette doppie nidificate all'interno di virgolette singole, devi modificare l'opzione--data
nell'esempio, come indicato di seguito:--data "{\"message\":\"hello world\"}"
Passaggi successivi
Inizia a utilizzare Esplora log.
Scopri come eseguire il routing dei log.
Utilizza i filtri per i filtri avanzati, ad esempio per ricevere tutte le richieste con una latenza superiore a 300 millisecondi.