Risoluzione dei problemi di Cloud Endpoints su Compute Engine

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Questa pagina presenta le tecniche di risoluzione dei problemi quando viene eseguito il deployment di Extensible Service Proxy (ESP) su una macchina virtuale (VM) di Compute Engine.

Visualizzazione dei log sull'istanza VM

Puoi risolvere i problemi esaminando il log di runtime di endpoint sull'istanza VM.

Per visualizzare il log:

  1. Utilizza ssh per connetterti alla macchina virtuale:

    gcloud config set project YOUR_PROJECT_ID
    
    gcloud compute ssh INSTANCE_NAME
    

    Sostituisci YOUR_PROJECT_ID e INSTANCE_NAME rispettivamente con l'ID progetto Google Cloud e il nome dell'istanza della macchina virtuale.

  2. Visualizza il log degli errori di nginx:

    Se esegui gli endpoint in esecuzione su una VM non elaborata:

    tail -f /var/log/nginx/error.log
    

    Se esegui endpoints-runtime in Docker:

    docker ps
    
    docker logs CONTAINER_NAME
    

    Sostituisci CONTAINER_NAME con il nome del tuo container.

Visualizzazione dello stato ESP

Per visualizzare lo stato ESP:

  1. Utilizza ssh per connetterti alla macchina virtuale:

    gcloud config set project YOUR_PROJECT_ID
    
    gcloud compute ssh INSTANCE_NAME
    

    Sostituisci YOUR_PROJECT_ID e INSTANCE_NAME con, rispettivamente, l'ID progetto Cloud e il nome dell'istanza della macchina virtuale.

  2. Recupera il nome del container ESP (in genere il nome del container è esp):

    docker ps
    
  3. Ottieni una shell bash nel container:

    docker exec -it ESP_CONTAINER_NAME /bin/bash
    

    Sostituisci ESP_CONTAINER_NAME con il nome del container ESP del passaggio precedente.

  4. Installare curl.

  5. Inserisci quanto segue:

    curl http://localhost:8090/endpoints_status
    

Recupero dell'ID configurazione servizio

Se imposti rollout_strategy su managed all'avvio di ESP e devi trovare l'ID di configurazione utilizzato da un'istanza di ESP, vicino alla fine dell'output dal comando curl http://localhost:8090/endpoints_status, l'output sarà simile al seguente:

      "serviceConfigRollouts": {
          "rolloutId": "2017-08-09r27",
          "percentages": {
               "2017-08-09r26": "100"
          }
      }

Il valore in rolloutId è l'ID configurazione del servizio utilizzato da ESP. Questo ID configurazione deve corrispondere all'ultima configurazione di cui è stato eseguito il deployment. Puoi visualizzare la cronologia dei deployment nella pagina Endpoint > Servizi di Google Cloud Console e visualizzare le modifiche apportate alla configurazione dei servizi. Consulta la pagina Confronto dei file di configurazione.