Resolução de problemas do Cloud Endpoints no Compute Engine

Esta página apresenta técnicas de resolução de problemas quando o proxy de serviço extensível (ESP) é implementado numa máquina virtual (VM) do Compute Engine.

Ver registos na instância de VM

Pode resolver problemas consultando o registo de tempo de execução dos Endpoints na instância de VM.

Para ver o registo:

  1. Use ssh para estabelecer ligação à sua máquina virtual:

    gcloud config set project YOUR_PROJECT_ID
    
    gcloud compute ssh INSTANCE_NAME
    

    Substitua YOUR_PROJECT_ID e INSTANCE_NAME pelo seu Google CloudID do projeto e nome da instância da máquina virtual, respetivamente.

  2. Ver o registo de erros nginx:

    Se estiver a executar o endpoints-runtime numa VM não processada:

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

    Se estiver a executar o endpoints-runtime no Docker:

    docker ps
    
    docker logs CONTAINER_NAME
    

    Substitua CONTAINER_NAME pelo nome do seu contentor.

Apresentação do estado do ESP

Para apresentar o estado do ESP:

  1. Use ssh para estabelecer ligação à sua máquina virtual:

    gcloud config set project YOUR_PROJECT_ID
    
    gcloud compute ssh INSTANCE_NAME
    

    Substitua YOUR_PROJECT_ID e INSTANCE_NAME peloGoogle Cloud ID do projeto e nome da instância da máquina virtual, respetivamente.

  2. Obtenha o nome do contentor do ESP (normalmente, o nome do contentor é esp):

    docker ps
    
  3. Obtenha um shell bash no contentor:

    docker exec -it ESP_CONTAINER_NAME /bin/bash
    

    Substitua ESP_CONTAINER_NAME pelo nome do contentor de ESP do passo anterior.

  4. Instale curl.

  5. Introduza os seguintes dados:

    curl http://localhost:8090/endpoints_status
    

Obter o ID de configuração do serviço

Se definiu rollout_strategy como managed quando iniciou o ESP, e precisar de encontrar o ID de configuração que uma instância do ESP está a usar, perto do final do resultado do comando curl http://localhost:8090/endpoints_status, o resultado é semelhante ao seguinte:

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

O valor em rolloutId é o ID de configuração do serviço que o ESP está a usar. Este ID de configuração deve corresponder à configuração implementada mais recente. Pode ver o histórico de implementação na página Endpoints > Services na Google Cloud consola e ver as alterações feitas à configuração do serviço. Veja o artigo Comparar ficheiros de configuração.