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

Nesta página, apresentamos as técnicas de solução de problemas quando o Extensible Service Proxy (ESP) é implantado em uma máquina virtual (VM, na sigla em inglês) do Compute Engine.

Como exibir registros na instância da VM

É possível solucionar problemas consultando o registro do ambiente de execução do Endpoints na instância de VM.

Para ver o registro:

  1. Use ssh para se conectar à sua máquina virtual:

    gcloud config set project YOUR_PROJECT_ID
    
    gcloud compute ssh INSTANCE_NAME
    

    Substitua YOUR_PROJECT_ID e INSTANCE_NAME pelo ID do projeto do Google Cloud e pelo nome da instância da máquina virtual, respectivamente.

  2. Visualize o registro de erros nginx:

    Se você estiver executando "endpoints-runtime" em uma VM bruta:

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

    Se você estiver executando endpoints-runtime no Docker:

    docker ps
    
    docker logs CONTAINER_NAME
    

    Substitua CONTAINER_NAME pelo nome do contêiner.

Como exibir o status do ESP

Para exibir o status do ESP:

  1. Use ssh para se conectar à sua máquina virtual:

    gcloud config set project YOUR_PROJECT_ID
    
    gcloud compute ssh INSTANCE_NAME
    

    Substitua YOUR_PROJECT_ID e INSTANCE_NAME pelo ID do projeto do Google Cloud e pelo nome da instância da máquina virtual, respectivamente.

  2. Recupere o nome do contêiner do ESP. Normalmente, o nome do contêiner é esp:

    docker ps
    
  3. Consiga um shell bash no contêiner:

    docker exec -it ESP_CONTAINER_NAME /bin/bash
    

    Substitua ESP_CONTAINER_NAME pelo nome do contêiner do ESP da etapa anterior.

  4. Instale curl.

  5. Digite o seguinte:

    curl http://localhost:8090/endpoints_status
    

Como conseguir o código de configuração do serviço

Se você definiu rollout_strategy como managed quando iniciou o ESP e precisa localizar o código de configuração que uma instância do ESP está usando, a saída próxima ao final do comando curl http://localhost:8090/endpoints_status é semelhante ao seguinte:

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

O valor no rolloutId é o código de configuração do serviço a ser usado pelo ESP. Esse código de configuração precisa corresponder à configuração implantada mais recentemente. É possível conferir o histórico de implantação na página Endpoints > Serviços no Console do Google Cloud e conferir as alterações feitas na configuração do serviço. Consulte Como comparar arquivos de configuração.