Para monitorar a integridade do pipeline de streaming e o consumo de recursos sem configurar manualmente as políticas no Cloud Monitoring, ative os alertas prontos para uso no Dataflow. Os alertas prontos para uso oferecem um conjunto pré-configurado de políticas de alerta recomendadas que podem ser ativadas durante a inicialização do job.
Com esse recurso, é possível:
- Ter visibilidade instantânea:rastreie automaticamente métricas de streaming críticas, como o tempo de processamento do backlog e o crescimento da vCPU, sem configuração manual.
- Padronizar o monitoramento:aplique rapidamente políticas de alerta de linha de base em cargas de trabalho de produção novas e atuais.
- Personalizar alertas:ajuste os limites de alerta padrão, desative políticas individuais ou adicione suas próprias políticas de alerta personalizadas ao conjunto.
É possível personalizar essas políticas padrão a qualquer momento no Cloud Monitoring ou integrar suas próprias políticas de alerta personalizadas ao conjunto de alertas prontos para uso.
Pré-requisitos
Para usar alertas prontos para uso, seu projeto precisa atender aos seguintes requisitos:
Canais de notificação: é necessário ter pelo menos um canal de notificação configurado (por exemplo, e-mail, Slack ou PagerDuty). Recomendamos configurar os contatos essenciais para garantir que os alertas cheguem às partes interessadas corretas. Esse requisito não é aplicado pelo serviço do Dataflow. Para mais informações, consulte Criar e gerenciar canais de notificação.
Permissões: a conta de serviço do Dataflow (P4SA) exige permissões específicas do IAM para criar e gerenciar essas políticas em seu nome:
monitoring.alertPolicies.getmonitoring.alertPolicies.listmonitoring.alertPolicies.createmonitoring.alertPolicies.updatemonitoring.alertPolicies.delete
Para novos projetos, essas permissões são adicionadas automaticamente. Para projetos atuais, talvez seja necessário definir essas permissões manualmente na conta P4SA.
Atualizar permissões P4SA
O agente de serviço do Dataflow (geralmente chamado de P4SA ou conta de serviço por produto e por projeto) é uma conta de serviço gerenciado automaticamente criada quando você ativa a API Dataflow. O endereço de e-mail usa o seguinte formato:
service-PROJECT_NUMBER@dataflow-service-producer-prod.iam.gserviceaccount.com
Para atualizar a P4SA, você precisa da permissão resourcemanager.projects.setIamPolicy ou de um papel que inclua essa permissão, como o administrador do IAM do projeto (roles/resourcemanager.projectIamAdmin).
Para conceder os papéis necessários usando o Google Cloud console, siga estas etapas:
No Google Cloud console, acesse a página IAM.
Selecione o projeto.
Marque a caixa de seleção Incluir concessões de papel fornecidas pelo Google.
Na lista de principais, localize a linha do agente de serviço do Dataflow (
service-PROJECT_NUMBER@dataflow-service-producer-prod.iam.gserviceaccount.comou com o papel Agente de serviço do Cloud Dataflow).Nessa linha, clique em Editar principal.
No painel Editar permissões, clique em Adicionar outro papel.
Na lista Selecionar um papel, selecione Editor do Monitoring (
roles/monitoring.editor).Clique em Salvar. A atualização da permissão pode levar vários minutos para ser propagada.
Ativar alertas prontos para uso
É possível registrar um job em alertas prontos para uso usando a CLI gcloud.
Ativar alertas usando a CLI gcloud
Adicione uma das seguintes flags durante o envio do job para ativar ou desativar o recurso:
--enable-turnkey-alerts--no-enable-turnkey-alerts
Se a conta de serviço não tiver as permissões necessárias, a CLI vai rejeitar a solicitação e mostrar as permissões ausentes. Para mais informações, consulte os Pré-requisitos.
As configurações de alerta prontas para uso são preservadas nas atualizações de jobs. Ao atualizar um job, a configuração anterior de alertas prontos para uso é mantida. Portanto, não é necessário especificar a flag --enable-turnkey-alerts ou --no-enable-turnkey-alerts novamente, a menos que você queira mudar a configuração.
Conjunto de políticas padrão
Os alertas prontos para uso incluem duas políticas principais projetadas para cargas de trabalho de streaming típicas, que se concentram em KPIs em tempo real, como tempos de processamento e utilização de recursos. As políticas fornecidas pelo Google são prefixadas com Default Policy: para identificação, embora o serviço use rótulos como identificador principal.
Os clientes são registrados automaticamente em todas as políticas do conjunto de políticas padrão. Se necessário, é possível desativar políticas padrão específicas no alerta do Cloud Monitoring.
| Nome da política | Métrica de base | Limite padrão | Justificativa |
|---|---|---|---|
| Política padrão: backlog estimado | job/estimated_backlog_processing_time |
30 minutos | Estima o tempo necessário para limpar o backlog atual. Um backlog maior que 30 minutos indica que o job está com dificuldades para progredir. |
| Política padrão: política de crescimento de vCPU | job/current_num_vcpus |
Aumento maior que 5 vezes no uso médio de vCPU em uma hora em comparação com uma média de sete dias | Monitora mudanças relativas nas contagens de vCPU para ajudar a avaliar custos inesperados de jobs. |
Ciclo de vida da política
- Políticas Beta:essas políticas têm um prefixo
BETAno nome e estão sujeitas a mudanças ou exclusão à medida que os limites são refinados. - Políticas de GA:quando uma política é considerada estável, o prefixo
BETAé removido.
Personalizar e gerenciar alertas
Os alertas prontos para uso servem como ponto de partida. Recomendamos personalizá-los para atender aos requisitos específicos da sua empresa.
- No Google Cloud console, acesse Cloud Monitoring > Alerta.
- Encontre a política (por exemplo, Política padrão: backlog estimado).
- Edite o limite para o valor de sua preferência.
Criar políticas personalizadas
É possível adicionar qualquer política de alerta do Cloud Monitoring ao conjunto de alertas prontos para uso adicionando o rótulo goog-turnkey-alerts a ela. Isso permite gerenciar regras personalizadas específicas da empresa junto com o conjunto padrão.
Desativar ou excluir políticas de alerta
É possível desativar ou excluir políticas padrão específicas usando o Monitoring. Quando você desativa uma política, o Monitoring para de avaliar a condição da política e nenhum novo incidente é criado, mas a configuração da política é preservada. Se você excluir uma política, ela será removida permanentemente do projeto. Para mais informações sobre como gerenciar ciclos de vida de políticas, consulte Gerenciar políticas de alerta e Políticas de alerta desativadas.
Solução de problemas
| Problema | Resolução |
|---|---|
| PERMISSION_DENIED | Verifique se a P4SA do Dataflow tem as permissões monitoring.alertPolicies.* necessárias listadas nos Pré-requisitos. Se a P4SA não tiver esses papéis, o pipeline ainda será iniciado, mas um erro PERMISSION_DENIED vai aparecer na saída da linha de comando e nos registros do job, indicando que os alertas padrão não puderam ser criados. |
| Nenhum alerta recebido | Determine se a condição de alerta foi atendida verificando se há incidentes. É possível conferir os acionamentos de alerta e as linhas do tempo de incidentes no Monitoring (consulte Conferir incidentes e eventos). |
| Políticas duplicadas | Isso geralmente acontece quando várias políticas compartilham o rótulo goog-turnkey-alerts e a mesma configuração de métrica. O Dataflow verifica rótulos e métricas sobrepostos em vez de correspondências exatas de nomes. Revise suas políticas e remova o rótulo de configurações redundantes. |