Risolvere gli errori di risposta

Se non ricevi una risposta positiva da una richiesta all'API Cloud Endpoints Frameworks, puoi utilizzare Cloud Logging nella console Google Cloud per risolvere i problemi.

Visualizzazione dei log

  1. Nella console Google Cloud, vai alla pagina Logging > Esplora log.

    Vai alla pagina Esplora log

  2. Nell'elenco a discesa del progetto nella parte superiore della pagina, seleziona il progetto Google Cloud in cui hai creato l'API.

  3. Seleziona GAE Application e All logs.

  4. Modifica l'intervallo di tempo finché non viene visualizzata una riga che mostra un errore.

  5. Fai clic su Espandi tutto per visualizzare l'intero log relativo all'errore.

La sezione seguente 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 mostra l'errore e incollala in un file di testo. Includi il log in qualsiasi comunicazione con Google.

503 Service Unavailable

App Engine potrebbe richiedere alcuni minuti per rispondere correttamente alle richieste. Se invii una richiesta e ricevi un errore 503, attendi qualche minuto e riprova. Se non ricevi ancora una risposta positiva, controlla i log di Cloud Logging. Di seguito sono riportati alcuni messaggi di errore che potresti trovare nei log di Cloud Logging.

Messaggio di errore Risoluzione dei problemi
Nessun servizio YOUR_PROJECT_ID.appspot.com trovato o autorizzazione negata. Se si tratta di un nuovo servizio Endpoints, assicurati di aver eseguito il deployment della configurazione del servizio utilizzando gcloud. Endpoints Frameworks for Python registra questo errore quando non riesce a caricare la configurazione del servizio specificata nel file app.yaml. Questo errore può verificarsi se non hai eseguito il deployment del documento OpenAPI per la tua 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 attiva automaticamente quanto segue:
  • API Service Management (servicemanagement.googleapis.com)
  • API Cloud (cloudapis.googleapis.com)
Se hai disattivato uno di questi servizi, devi riattivarlo. Per ulteriori informazioni, consulta Attivare e disattivare le API.
Il servizio YOUR_PROJECT_ID.appspot.com è stato trovato, 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 specificato per ENDPOINTS_SERVICE_VERSION nel file app.yaml. Per correggere l'errore:
  1. Recupero dell'ID di configurazione del servizio.
  2. Modifica il file app.yaml e imposta ENDPOINTS_SERVICE_VERSION sull'ID configurazione del servizio.
  3. Esegui nuovamente il deployment dell'app:
    gcloud app deploy

404 Not Found

Se di recente hai eseguito la migrazione alla versione 2 di Endpoints Frameworks 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 non va a buon fine. Abbiamo anche ricevuto un report che indicava che 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 per Linux nel 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 valore application/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
      
  • 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 segue: --data "{\"message\":\"hello world\"}"

Passaggi successivi

  • Inizia a utilizzare Esplora log.

  • Scopri come indirizzare i log.

  • Utilizza i filtri per filtrare in modo avanzato, ad esempio per ottenere tutte le richieste con una latenza superiore a 300 millisecondi.