Neste tutorial, mostramos como configurar um alerta de tempo de atividade no aplicativo "Hello World" usando Python em execução no ambiente flexível do App Engine usando o Cloud Monitoring. Os alertas de tempo de atividade informam quando seu app não está enviando tráfego. Também é possível configurar alertas de tempo de atividade para apps em execução no Compute Engine ou no Google Kubernetes Engine (GKE).
Objetivos
- Executar um app "Hello World" básico.
- Criar uma verificação de tempo de atividade que monitore o retorno de um código de status HTTP 200 pelo app.
- Criar um alerta que envie uma mensagem de e-mail quando a verificação de tempo de atividade falhar.
- Reiniciar o app para acionar o alerta.
Custos
Atualmente, o Monitoring é oferecido sem sem custos financeiros aos usuários da versão Beta.
Antes de começar
- Faça login na sua Google Cloud conta do. Se você começou a usar o Google Cloud, crie uma conta para avaliar o desempenho dos nossos produtos em situações reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Como clonar o app de exemplo
O app de amostra está disponível no GitHub em
GoogleCloudPlatform/getting-started-python.
Clone o repositório.
git clone https://github.com/GoogleCloudPlatform/getting-started-python.gitAcesse o diretório da amostra.
cd getting-started-python/gceComo o app mostra apenas a mensagem"Hello World!", ele não requer configuração, e você pode executá-lo imediatamente.
gcloud app deployPara ver a mensagem, digite o seguinte URL no seu navegador:
https://PROJECT_ID.REGION_ID.r.appspot.comSubstitua:
PROJECT_ID: o ID do Google Cloud projetoREGION_ID: um código que o App Engine atribui ao seu app
Como criar uma verificação do tempo de atividade
Depois de implantar o app, você pode usar o Monitoring para criar uma verificação de tempo de atividade. A verificação faz ping continuamente no app implantado para garantir que ele esteja retornando uma resposta íntegra.
-
No Google Cloud console, acesse a página
Verificações de tempo de atividade:
Acesse Verificações de tempo de atividade
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.
- Clique em Criar verificação de tempo de atividade.
Dê um título à verificação, como
Check Hello World, e clique em Avançar.Na seção Target, especifique a verificação de tempo de atividade a ser monitorada:
- Como você implantou no App Engine, altere o Tipo de recurso para App Engine no lugar de URL. (URL é usado para gerar um URL personalizado em uma instância do Compute Engine.)
- Selecione o Serviço que será monitorado pela verificação de tempo de atividade.
- Deixe Caminho em branco, o que definirá a página de índice principal como padrão.
- Deixe a opção Frequência de verificação com o padrão 1 minuto.
- Clique em Next.
Deixe os campos Validação de resposta nos valores padrão e clique em Avançar.
Na seção Alerta e notificação, especifique como você será notificado se um alerta ocorrer:
- Verifique se o rótulo do seletor é O alerta está ativado.
- Deixe os campos de nome e duração nos valores padrão.
Para adicionar um canal de notificação à política de alertas, na caixa de texto Canais de notificação, clique em Menu. Selecione os canais a serem adicionados e clique em OK. As notificações são agrupadas em ordem alfabética para cada tipo de canal.
Para adicionar uma entrada à lista de caixas de seleção, clique em Gerenciar canal de notificação e siga as instruções. Ao retornar a essa caixa de diálogo, clique em Atualizar refresh.
Clique em Criar. Quando a ação de criação for bem-sucedida, a mensagem Verificação e alerta criados e a página do painel Verificações de tempo de atividade serão exibidas.
A nova verificação de tempo de atividade será listada no painel de verificações de tempo de atividade. Se você clicar no nome da verificação, a visualização de detalhes dessa verificação de tempo de atividade será aberta. Essa visualização exibe vários gráficos, mostra a porcentagem de tempo de atividade e informações de configuração, assim como lista as políticas de alerta configuradas. Para ver uma política específica, clique no nome dela.
Também é possível visualizar a política de alertas na página Alertas. Na página de alertas, o painel Políticas lista um subconjunto de políticas. Para ver uma lista de todas as políticas, clique em Ver todas as políticas.
Como simular uma interrupção
Agora que a verificação de tempo de atividade foi criada, você pode simular uma interrupção alterando
seu app para responder com um erro HTTP 404 Sorry, we can't find that page
em vez de HTTP 200 OK.
O código a seguir mostra onde o app Hello World retorna apenas uma mensagem "Hello World!" e que o código de status da resposta é padronizado como
200 OK. Para visualizar esse código no app Hello World, use a função de visualização.Para fazer com que o app Hello World retorne um código de erro HTTP
404, altere a linha de retorno adicionando um valor404à segunda parte do valor de retorno.return 'Hello World', 404
Implante o novo app interrompido intencionalmente.
gcloud app deploy
Em meia hora, você receberá uma mensagem de e-mail informando que sua verificação de tempo de atividade está falhando.
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados no tutorial, exclua o projeto que os contém ou mantenha o projeto e exclua os recursos individuais.
O jeito mais fácil de evitar o faturamentos é excluindo o projeto criado para este tutorial.
Para excluir o projeto:
- No Google Cloud console, acesse a página Gerenciar recursos.
- Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir.
- Na caixa de diálogo, digite o ID do projeto e clique em Desligar para excluir o projeto.