Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.
Guia de início rápido: verifique se há erros em um app com falha usando o Error Reporting

Verificar se há erros em um app com falha usando o Error Reporting

O Error Reporting oferece um local único para monitorar as condições de erro de todos os aplicativos e serviços em um projeto do Google Cloud e de aplicativos da Amazon Elastic Compute Cloud (EC2).

Neste guia, você aprenderá o seguinte:

  1. Simular um erro de um serviço em um projeto do Cloud.

  2. Usar o Error Reporting para visualizar o erro e alterar o status dele para que outras pessoas da sua equipe saibam que o problema está sendo resolvido.

  3. Configurar as notificações para saber quando novos tipos de erro forem encontrados.


Para ver orientações passo a passo sobre essa tarefa diretamente no console do Google Cloud, clique em Orientação:

Orientação


As seções a seguir guiam você pelas mesmas etapas que você encontra clicando em Orientações.

Antes de começar

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se o faturamento está ativado para seu projeto na nuvem. Saiba como verificar se o faturamento está ativado em um projeto.

  4. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  5. Verifique se o faturamento está ativado para seu projeto na nuvem. Saiba como verificar se o faturamento está ativado em um projeto.

  6. Abra um Cloud Shell para o projeto do Cloud. Enquanto ele inicializa, a mensagem Conectando é exibida.

    Abra o Cloud Shell.

Simular um erro

  1. Para gerar 11 erros de amostra, execute o seguinte script no Cloud Shell:

      COUNTER=0
      while [  $COUNTER -lt 11 ]; do
          gcloud beta error-reporting events report --service tutorial --service-version v$((COUNTER/10+1)) \
              --message "java.lang.RuntimeException: Error rendering template $COUNTER
                at com.example.TestClass.test(TestClass.java:51)
                at com.example.AnotherClass(AnotherClass.java:25)
                at javax.servlet.http.HttpServlet.service (HttpServlet.java:617)
                at javax.servlet.http.HttpServlet.service (HttpServlet.java:717)"
          if [ $COUNTER -eq 10 ]; then
            echo "All sample errors reported."
          fi
          let COUNTER=COUNTER+1
      done
    

    Quando o script terminar de gerar todos os erros, ele mostrará a seguinte mensagem:

    All sample errors reported.

Veja os erros no Error Reporting

  1. Acesse o Error Reporting:

    Acessar o Error Reporting

    O painel do Error Reporting exibe um resumo em lista de cada erro encontrado e o número de ocorrências de cada erro. Quando a opção Atualizar automaticamente está ativada, o Error Reporting atualiza automaticamente a lista de erros a cada 10 segundos.

    A coluna Ocorrências mostra o número de mensagens para cada tipo de erro com um gráfico de tempo:

    A interface do usuário mostrando ocorrências em lote dos
   erros de exemplo.

  2. Clique no nome do erro para visualizar a página de detalhes dele, que contém todas as informações disponíveis sobre um erro, incluindo links para o código-fonte:

    A interface do usuário mostrando a página de detalhes do erro.

Configurar notificações

É possível configurar o Error Reporting para notificá-lo quando um novo tipo de erro chegar. As notificações não são enviadas quando há novas ocorrências de erros atuais:

  1. Acesse o Error Reporting:

    Acessar o Error Reporting

  2. Para ativar as notificações por e-mail, clique em Mais e selecione Ativar notificações de novos erros para o projeto na lista suspensa.

  3. Para gerar novos tipos de erros, clique em Ativar o Cloud ShellBotão "Ativar shell" e execute o seguinte script:

      COUNTER=0
      while [ $COUNTER -lt 3 ]; do
            gcloud beta error-reporting events report --service tutorial --service-version v1 \
                --message "java.lang.ArrayIndexOutOfBoundsException: $COUNTER
                  at com.example.AppController.createUser(AppController.java:42)
                  at com.example.User(User.java:31)
                  at javax.servlet.http.HttpServlet.service (HttpServlet.java:617)
                  at javax.servlet.http.HttpServlet.service (HttpServlet.java:717)"
          if [ $COUNTER -eq 10 ]; then
            echo "All sample errors reported."
          fi
          let COUNTER=COUNTER+1
      done
    

    Quando o script terminar de gerar todos os erros, ele mostrará a seguinte mensagem:

    All sample errors reported.

  4. Verifique se há uma mensagem do "Notificações do Stackdriver" no seu e-mail.

Gere mensagens de erro de um aplicativo do App Engine

Embora as mensagens de amostra geradas pelos scripts simulem completamente as condições de erro no Error Reporting, se você quiser gerar erros de um serviço real em execução no projeto do Cloud, siga as etapas nesta seção.

Implante um app

Para fazer o download e implantar um aplicativo no App Engine, faça o seguinte:

  1. Faça o download e configure o aplicativo do projeto python-docs-samples do GitHub:

    1. Clone o projeto no Cloud Shell:

      git clone https://github.com/GoogleCloudPlatform/python-docs-samples
      

      O Git retorna uma mensagem semelhante a esta:

      git clone https://github.com/GoogleCloudPlatform/python-docs-samples
      Cloning into 'python-docs-samples'...
      
    2. Crie um ambiente Python isolado e ative-o:

      cd python-docs-samples/appengine/standard_python3/hello_world
      virtualenv env -p python3
      source env/bin/activate
      
    3. Instale as dependências:

      pip install -r requirements.txt
      
  2. Verifique se a instalação e a configuração do aplicativo foram bem-sucedidas:

    1. Execute o aplicativo:

      python main.py
      
    2. Para visualizar o aplicativo em uma página da Web local, clique no link exibido no Cloud Shell. A página da Web exibe Hello World!.

    3. Para interromper o aplicativo em execução, digite Ctrl-C no Cloud Shell.

  3. Faça upload do aplicativo no App Engine.

    gcloud app deploy
    

    Se for solicitada uma região de implantação, selecione uma perto de você. Digite Y quando perguntado se você quer continuar. Depois de alguns momentos, o upload estará concluído.

  4. Visualize o aplicativo em um navegador executando o seguinte comando no Cloud Shell:

    gcloud app browse
    

    Se a CLI do Google Cloud não conseguir encontrar seu navegador, o comando anterior exibirá uma mensagem de erro e um link. Clique no link exibido. A mensagem Hello, World! é exibida no navegador.

Criar um erro

Para criar um erro que o Error Reporting detecta e exibe, faça o seguinte:

  1. Edite main.py e altere

    return 'Hello World!
    

    a

    return 'Hello World!' + 1000
    

    Quando executada, essa alteração causa uma exceção TypeError do Python porque é ilegal concatenar uma string e um número inteiro.

  2. Faça upload do aplicativo modificado no App Engine:

    gcloud app deploy
    
  3. Volte para a guia do navegador que contém o aplicativo em execução e atualize a página. Devido à alteração, em vez da página exibir Hello, World!, ela exibe uma mensagem de erro:

    Internal Server Error
    The server encountered an internal error and was unable to complete your
    request. Either the server is overloaded or there is an error in the
    application.
    

    Se você não vir essa mensagem, espere um minuto e recarregue-a. Pode levar alguns instantes para a nova versão ser ativada.

Visualizar o erro no Error Reporting

Para ver o erro, siga as instruções da seção anterior Visualize os erros no Error Reporting.

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.

  1. No Console do Google Cloud, acesse a página Gerenciar recursos.

    Acessar "Gerenciar recursos"

  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.

A seguir