Esta página explica por que você pode não receber notificações como esperado e oferece possíveis soluções para essas situações.
As notificações não são recebidas
Se você não receber notificações em nenhum dos canais configurados, faça o seguinte:
-
No console Google Cloud , acesse a página Análise de registros.
Acessar a Análise de registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
- Selecione o projeto Google Cloud adequado.
Consulte os registros de eventos do canal de notificação:
- Expanda o menu Nome do registro e selecione notification_channel_events.
- Abra o menu Gravidade e selecione Erro.
- Opcional: para selecionar um período personalizado, use o seletor de intervalo de tempo.
- Clique em Executar consulta.
As etapas anteriores criam a seguinte consulta:
resource.type:"stackdriver_notification_channel" logName="projects/PROJECT_ID/logs/monitoring.googleapis.com%2Fnotification_channel_events" severity=ERROR
A linha de resumo e o campo
jsonPayload
geralmente contêm informações de falha. Por exemplo, quando ocorre um erro de gateway, a linha de resumo inclui "falhou com 502 Bad Gateway".
As notificações do webhook não são recebidas
Esta seção se aplica quando você não recebe notificações por um canal de notificação de webhook configurado.
Endpoint particular
Se você tiver um endpoint particular, use notificações do Pub/Sub combinadas com uma assinatura de pull para esse tópico de notificação. Não é possível usar webhooks para notificações em endpoints particulares.
Ao configurar um canal de notificação do Pub/Sub, as notificações de incidentes são enviadas para uma fila do Pub/Sub que tem controles do Identity and Access Management. Qualquer serviço que possa consultar ou detectar um tópico do Pub/Sub pode consumir essas notificações. Por exemplo, aplicativos executados em máquinas virtuais do App Engine, Cloud Run ou Compute Engine podem consumir essas notificações.
Se você usar uma assinatura pull, uma solicitação será enviada ao Google, que aguarda a chegada de uma mensagem Essas assinaturas exigem acesso ao Google, mas não exigem regras para firewalls ou acesso de entrada.
Endpoint público
Para identificar por que a entrega falhou, examine as entradas de registro do Cloud Logging em busca de informações de falha.
Por exemplo, é possível pesquisar nas entradas de registro pelo recurso de canal de notificação. Para isso, use o Explorador de registros, com um filtro como este:
resource.type="stackdriver_notification_channel"
As notificações do Pub/Sub não são recebidas
Se você não receber notificações por um canal de notificação do Pub/Sub configurado, tente o seguinte:
Verifique se a conta do serviço de notificações existe. As notificações não são enviadas quando a conta de serviço é excluída.
Para verificar se a conta de serviço existe, faça o seguinte:
-
No console do Google Cloud , acesse a página IAM:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo IAM e administrador.
Procure uma conta de serviço que tenha a seguinte convenção de nomenclatura:
service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com
Se essa conta de serviço não estiver listada, selecione Incluir concessões de papel fornecidas pelo Google.
Se a conta de serviço de notificações não existir, inicie o processo de criação do canal de notificação do Pub/Sub para que o Monitoring crie a conta de serviço:
-
No console Google Cloud , acesse a página notifications Alertas:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.
- Clique em Editar canais de notificação.
Na seção Pub/Sub, clique em Adicionar novo.
O Monitoring cria a conta de serviço de notificações quando ela não existe. A caixa de diálogo Criar canal do Pub/Sub mostra o nome da conta de serviço de notificações.
Se você não quiser adicionar um canal de notificação, clique em Cancelar. Caso contrário, termine de criar o canal de notificação e clique em Adicionar canal.
Conceda permissões à conta de serviço para publicar os tópicos do Pub/Sub:
- Em uma nova guia do navegador, abra o documento Criar um canal de notificação.
- Selecione a guia Pub/Sub e siga as etapas na seção Autorizar conta de serviço da página.
-
Verifique se a conta de serviço de notificações foi autorizada a enviar notificações para os tópicos de interesse do Pub/Sub.
Para ver as permissões de uma conta de serviço, use o consoleGoogle Cloud ou o comando da Google Cloud CLI:
- A página IAM no console Google Cloud lista os papéis de cada conta de serviço.
- A página Tópicos do Pub/Sub no console Google Cloud lista cada tópico. Quando você seleciona um tópico, a guia Permissões lista os papéis concedidos às contas de serviço.
Para listar todas as contas de serviço e os respectivos papéis, execute o seguinte comando da Google Cloud CLI:
gcloud projects get-iam-policy PROJECT_ID
Veja a seguir uma resposta parcial para este comando:
serviceAccount:service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com role: roles/monitoring.notificationServiceAgent - members: [...] role: roles/owner - members: - serviceAccount:service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com role: roles/pubsub.publisher
A resposta ao comando inclui apenas papéis, e não permissões por tópico.
Para listar as vinculações do IAM para um tópico específico, execute o seguinte comando:
gcloud pubsub topics get-iam-policy TOPIC
Veja a seguir um exemplo de resposta para este comando:
bindings: - members: - serviceAccount:service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com role: roles/pubsub.publisher etag: BwXPRb5WDPI= version: 1
Para informações sobre como autorizar a conta de serviço de notificações, consulte Autorizar conta de serviço.
Você não recebe notificações quando uma VM é encerrada
Para receber uma notificação quando uma máquina virtual (VM) for desligada, crie uma verificação de tempo de atividade para consultar periodicamente a VM e, em seguida, crie uma política de alertas para monitorar essa verificação. Se você estiver usando uma nuvem privada virtual (VPC), talvez seja necessário criar uma verificação de tempo de atividade privada.
Uma política de alertas que monitora a métrica
compute.googleapis.com/instance/uptime
ou
não notifica você quando a VM é desligada. Para essa métrica, as políticas de alertas só monitoram série temporal de instâncias de VM no estado RUNNING
. Se uma VM estiver em qualquer outro estado, como STOPPED
ou DELETED
,
ela não será monitorada. Para informações sobre os estados da instância de VM, consulte Ciclo de vida da instância de VM.
Não é possível receber notificações para políticas de alertas de contagem de solicitações
Se você não receber notificações de uma política de alertas que monitora a métrica serviceruntime.googleapis.com/api/request_count
, verifique se o período de alinhamento da política não é superior a 7 horas e 30 minutos.
Não recebo mensagens de notificação por SMS ou códigos de verificação
Se você não receber notificações por SMS ou códigos de verificação, confira se não atingiu o limite de mensagens SMS. Talvez haja registros que confirmem esse erro. Verifique os registros de Denied quota token
.
Como recomendação geral, não é aconselhável usar apenas canais de SMS para notificações. As notificações por SMS são oferecidas com base no "melhor esforço".