O Realtime Compute for Apache Flink oferece suporte aos services de monitoramento e alerta do CloudMonitor (um service gratuito) ou do Application Real-Time Monitoring Service (ARMS). Configure alertas de métricas para jobs, alertas de eventos para jobs e alertas para workflows para identificar e tratar exceções rapidamente. Este tópico descreve como configure o monitoramento e os alertas usando diferentes services de monitoramento.
Limitações
Não há suporte para a configuração de monitoramento e alertas em jobs do Flink enviados a um cluster Session durante o deployment.
Atualmente, não há suporte para monitoramento e alertas em jobs em lote.
O ARMS não oferece suporte a alertas de workflow. No entanto, você ainda pode configurá-los usando o CloudMonitor (um service gratuito).
Guia de configuração
Com base no tipo de service de monitoramento usado pelo seu workspace (Check monitoring service type), escolha o método de configuração adequado:
-
Service de monitoramento gratuito (CloudMonitor)
Metric alert configuration: Configure alertas com base em alterações nos valores de métricas, como CPU, latência e volume de dados. Há suporte para configuração de um ou vários jobs.
Event alert configuration (including workflows): Configure alertas com base na ocorrência de eventos, como falhas de jobs. Há suporte para configuração de eventos de jobs e workflows.
-
Service de monitoramento ARMS
Metric alert configuration: Configure alertas com base em alterações nos valores de métricas (oferece suporte a seis métricas principais). Há suporte para configuração de um ou vários jobs.
Event alert configuration: Independentemente do tipo de service de monitoramento, você pode configurar alertas de eventos por meio do CloudMonitor event alert configuration.
Alternar tipos de service de monitoramento
Você pode alternar entre os tipos de service de monitoramento para atender a diferentes necessidades de negócios.
No Management Console, na coluna Actions do workspace de destino, clique em More para alternar para o outro tipo de service de monitoramento.
Leia atentamente as observações sobre a alternância de tipos de service. Você só poderá prosseguir com a configuração após marcar a caixa de seleção de confirmação.
Configure o monitoramento e os alertas usando o CloudMonitor
Configuração de alertas de métricas
Apenas a conta Alibaba Cloud que adquiriu o workspace, bem como os usuários e funções do RAM associados a essa conta com permissões de namespace, podem configure alertas no CloudMonitor.
Faça login no Cloud Monitor console.
No painel de navegação à esquerda, escolha .
Clique em Create Alert Rule e configure os parâmetros.
-
Parâmetro
Descrição
product
Realtime Compute for Apache Flink
Escopo do recurso
selecione Instance. A regra de alerta se aplica ao workspace especificado do Realtime Compute for Apache Flink.
Recursos associados
Clique em Add Instance, selecione o workspace na região de destino (How do I view information such as the workspace ID?) e clique em OK.
Descrição da regra
Clique em Add Rule > Simple Metric ou Composite Metric para abrir o painel Set Rule Description.
O painel inclui vários níveis de alerta: Critical, Warn (notifica por SMS, e-mail e webhook) e Info (notifica por e-mail e webhook). Para cada nível, você pode definir uma condição de limiar. Por exemplo, o valor médio é >= um limiar especificado por 3 períodos consecutivos, em que 1 período = 1 minuto.
Na seção Dimension, você pode configurar o namespace (nome do namespace do Flink) e o deploymentID (o deployment ID na guia Configuration do job do Flink) para especifique os jobs a serem monitorados.
Nota-
Se as listas suspensas de namespace e deploymentID estiverem vazias, insira os valores manualmente.
-
Se você deixar esses campos vazios, todos os jobs em todos os namespaces serão monitorados.
NotaEm um ambiente de produção, alertas de métrica única podem facilmente gerar falsos positivos ou negativos. Os alertas de métricas compostas refletem com mais precisão as exceções de negócios. Para mais informações, consulte Recommended configuration examples and templates for monitoring and alerting.
Para mais informações sobre outros parâmetros, consulte Create an alert rule.
-
Configuração de alertas de eventos (incluindo workflows)
Apenas a conta Alibaba Cloud que adquiriu o workspace, bem como os usuários e funções do RAM associados a essa conta com permissões de namespace, podem configure alertas ou assinar eventos no CloudMonitor.
Alertas de eventos de jobs
Assine os alertas de eventos do sistema para jobs configurando condições. Há suporte para a configuração em lote de alertas de eventos.
Faça login no Cloud Monitor console.
No painel de navegação à esquerda, escolha .
Na guia Subscription Policy, clique em Create Subscription Policy.
-
Na página Create Subscription Policy, configure os parâmetros. Para mais informações sobre os parâmetros, consulte Manage event subscriptions (recommended).
Subscription Type: System Event.
product: selecione Realtime Compute for Apache Flink.
Event Name: Oferece suporte aos eventos Job Run Failed, Post-mortem Processing for ECS Downtime e Impact of Proactive O&M on ECS.
-
Event Content: Você pode especifique jobs ou configure alertas em lote insira as seguintes informações do Flink no conteúdo do evento.
Workspace ID: Configure alertas de eventos para todos os jobs em todos os namespaces no workspace de destino. Visualize o ID do workspace, consulte How do I view information such as the workspace ID?.
Namespace Name: Configure alertas de eventos para todos os jobs no namespace de destino.
Deployment Job Name: Configure alertas de eventos para jobs específicos. Separe vários nomes de jobs com uma vírgula (
,). Se houver jobs com o mesmo nome na sua conta, use o DeploymentID.DeploymentID: Configure alertas de eventos para jobs específicos. Separe vários IDs com uma vírgula (
,). Você pode encontrar o ID na guia Configuration da página do job do Flink como o deployment ID.
NotaSe você não definir Application Group, Message ou Event Resource, a assinatura se aplicará a todos os workspaces da sua conta.
Alertas de eventos de workflows
Assine os alertas de eventos do sistema para workflows do Flink configurando condições. Há suporte para a configuração em lote de alertas de eventos. Para mais informações sobre workflows, consulte Manage workflows.
-
Obtenha o ID do recurso do nó do workflow.
Faça login no Cloud Monitor console.
No painel de navegação à esquerda, escolha .
Na guia Event Monitoring, defina product como Realtime Compute for Apache Flink e Event Name como Workflow Task Status Change e clique em Search.
-
Encontre o ID do recurso do nó do workflow abaixo.
Na página Event Monitoring, selecione Realtime Compute for Apache Flink na lista suspensa product. Na lista de eventos, encontre o registro com o nome de evento flink:Workflow:TaskStateChange Workflow Task Status Change. Visualize o ID do recurso do nó do workflow na coluna Resource.
O formato do recurso é
acs:flink:cn-hangzhou:<AlibabaCloudAccountId>:resourceId/workspaceId/<workspaceId-namespaceId>#workflowDefinitionName/<workflowDefinitionName>#taskDefinitionName/<taskDefinitionName>. Você também pode usar este formato para construir diretamente o ID do recurso para o seu nó de workflow.Parâmetro
Descrição
<AlibabaCloudAccountIdOfWorkspace>O ID da conta Alibaba Cloud proprietária do workspace do Flink.
<workspaceId-namespaceId>Uma combinação do
workspaceIdenamespaceId, unidos por um hífen (-).workspaceId: O ID do workspace. Para mais informações, consulte Workspace management and operations.namespaceId: O nome do namespace.<workflowDefinitionName>O nome do workflow.
<taskDefinitionName>O nome do nó do workflow.
NotaGeralmente, há um atraso de alguns minutos antes que os eventos de alteração de status do workflow apareçam no CloudMonitor.
-
Assine as notificações de eventos.
No painel de navegação à esquerda, escolha .
Na guia Subscription Policy, clique em Create Subscription Policy.
-
Na página Create Subscription Policy, defina os parâmetros da política de assinatura. Para mais informações sobre os parâmetros, consulte Manage event subscriptions (recommended).
Subscription Type: System Event.
product: selecione Realtime Compute for Apache Flink.
Event Name: selecione Workflow Task Status Change.
Event Content: Oferece suporte à inserção de parâmetros como
toState: FAILED(workflow falhou),toState: SUCCESS(workflow bem-sucedido) efromState: SCHEDULED, toState: RUNNING(status do workflow alterado de agendado para em execução).Event Resource: insira o ID do recurso do workflow obtido na Etapa 1. Separe vários IDs com uma vírgula (
,).Event Type, Event Level, Application Group: Não defina nenhum destes.
Configure o monitoramento e os alertas usando o ARMS
Configuração de alertas de métricas
O monitoramento de múltiplas métricas no ARMS só é suportado por meio de PromQL personalizado. Para um método de configuração mais simples, use CloudMonitor metric alert configuration.
Configure um único job (Management Console)
Crie uma nova regra de alerta para um job de destino ou crie um modelo de regra de alerta e use-o para crie alertas para os jobs de destino. Isso pode acelerar a configuração do monitoramento e dos alertas.
O Development Console exibe apenas eventos de alerta das últimas 48 horas. Visualize eventos de alerta mais antigos, acesse Alert Management no console do ARMS.
-
acesse a página de configuração de alertas.
Faça login no Management Console e clique em Console na coluna Actions do workspace de destino.
Na página , clique no nome do job de destino.
Clique na guia Alarm.
-
Na guia Alert Rules, escolha .
Você também pode escolher . Ao adicionar e usar um modelo de alerta, você pode crie regras de alerta diretamente ou com pequenas modificações, o que acelera o processo de configuração.
-
insira as informações da regra de alerta.
Categoria
Parâmetro
Descrição
Rule
Name
Deve começar com uma letra e conter apenas letras minúsculas, números e sublinhados (_). O comprimento é limitado a 3 a 64 caracteres.
Description
Uma observação sobre a regra.
Content
Configure as condições que acionam um alerta. O sistema compara o valor da métrica especificada com o limiar em um intervalo definido. Se o resultado atender à condição, um alerta será acionado automaticamente.
-
Metric:
-
Restart Count in 1 Minute: O número de vezes que o Job Manager reiniciou em 1 minuto.
-
Checkpoint Count in 5 Minutes: O número de checkpoints bem-sucedidos em 5 minutos.
-
Emit Delay: A latência de negócios, que é a diferença de tempo entre o momento em que os dados são gerados e o momento em que saem do operador Source. A unidade é segundos.
ImportanteO tempo de geração de dados depende do carimbo de data/hora registrado no sistema externo. Se o sistema externo não tiver um carimbo de data/hora, ou se ele estiver incorreto, o valor de Emit Delay será impreciso e não refletirá a verdadeira latência. Configure alertas com múltiplas métricas para determinar o evento real. Para mais informações, consulte Recommended configuration examples and templates for monitoring and alerting.
-
IN RPS: O número de registros de entrada por segundo. A unidade é registros/segundo.
-
OUT RPS: O número de registros de saída por segundo. A unidade é registros/segundo.
-
Source Idle Time: O tempo em que a origem não processou dados. A unidade é milissegundos.
-
Job Failed: O job falhou.
-
-
Time Difference: A duração da janela de tempo de dados históricos que o sistema consulta retroativamente para cada verificação. A unidade é minutos.
-
Comparator: Oferece suporte a >= e <=.
-
Threshold: O valor a ser comparado com a métrica.
-
Se você selecionar o operador >=, o sistema usará o valor MAX do eixo vertical. Se o valor máximo dentro da diferença de tempo for >= o limiar, a regra de alerta será acionada.
-
Se você selecionar o operador <=, o sistema usará o valor MIN do eixo vertical. Se o valor mínimo dentro da diferença de tempo for <= o limiar, a regra de alerta será acionada.
-
Por exemplo, suponha que você esteja monitorando a métrica "Checkpoint Count in 5 Minutes". A diferença de tempo está definida como 10 minutos, o limiar é 2 e o operador é "<=".
A cada minuto, o sistema verifica os dados históricos dos últimos 10 minutos. Se encontrar qualquer intervalo de 5 minutos em que o número de checkpoints bem-sucedidos foi menor ou igual a 2, ele aciona um alerta.
Trigger Time
O horário em que o monitoramento de alerta está ativo. Especifique que ele fique ativo apenas durante o dia (das 9:00 às 18:00). Por padrão, fica ativo o dia todo.
Alarm Rate
envie um alerta apenas uma vez dentro de um número contínuo de minutos. Oferece suporte de 1 minuto a 1440 minutos (24 horas).
Notification Method
Notification Method
Você pode selecionar vários métodos de notificação. Os métodos suportados são:
-
DingTalk
-
E-mail
-
SMS
-
Webhook
-
Telefone
Certifique-se de que o número de telefone do destinatário foi verificado. Caso contrário, este método não funcionará. Você pode clicar em Notification object management abaixo. Se a coluna Phone do contato de destino na guia de contatos mostrar Unverified, clique para concluir a verificação.
ImportanteCertifique-se de ter criado e adicionado contatos de notificação disponíveis. Caso contrário, a notificação de alerta falhará. Por exemplo, se você selecionar DingTalk como método de notificação, selecione DingTalk e adicione um contato de notificação do DingTalk do tipo chatbot do DingTalk.
Notification Object
Você pode notificar vários contatos ao mesmo tempo. Você pode selecionar ou pesquisar contatos. Antes de selecionar um contato, você deve clicar em Notification object management à direita para crie um. Para mais informações, consulte Workspace management and operations.
Alarm Noise Reduction
Clique em Advanced Settings e ative a opção Alarm Noise Reduction.
Após ativar a redução de ruído de alarme, os alertas não serão enviados para cenários em que o job pode se recuperar rapidamente, como failovers de curto prazo acionados pelo agendamento de cluster ou ajuste automático. Os alertas são enviados apenas quando as condições de limiar definidas por você são atendidas continuamente.
No Data Alarms
Clique em Advanced Settings, ative a opção No Data Alarms e insira as informações de tempo contínuo sem dados.
Após ativar este recurso, o sistema monitora cenários em que nenhum dado de monitoramento é relatado. Se nenhum dado for relatado dentro do período selecionado, um alerta será acionado. Geralmente, nenhum dado de monitoramento é relatado quando o JobManager está anormal, o job para inesperadamente ou o link de relato está anormal.
-
-
Clique em OK e salve a regra.
A regra de alerta salva é ativada por padrão e aparece na lista de regras de alerta. Você pode parar, edite ou exclua a regra.
Configure um ou vários jobs (console do ARMS)
Se você alterar o nome de um job no console do Flink, qualquer regra de alerta configurada no console do ARMS com base no nome original do job se tornará inválida. Você deve selecionar novamente o job renomeado e configure o alerta para que ele tenha efeito.
Faça login no Management Console.
-
Na coluna Actions do workspace de destino, escolha para acesse o console do ARMS.
O nome do workspace, o ID do workspace e o nome da instância do Prometheus correspondente são exibidos na parte superior.
O painel de navegação à esquerda inclui Dashboard List, Service Discovery, Metric Management, Alert Rules e Settings. O status do agente é exibido no canto superior direito. Na guia Metrics da página Service Discovery, você pode filtrar métricas por nome de job, tipo de métrica e outras condições. A lista de métricas exibe o nome da métrica, o nome do job, o tipo de métrica e outras informações.
-
Clique em Alert Rules à esquerda para crie uma regra de alerta.
Check Type: Oferece suporte a alertas de métricas por meio de limiares estáticos e PromQL personalizado (exceto métricas de alerta já suportadas pelo Flink).
Filter Conditions: Há suporte para configuração de alertas em lote. Para Namespace, insira o nome do namespace. Selecionar todos indica todos os namespaces no workspace. Para Create Deployment, insira o deployment ID do job de destino no namespace (encontrado na guia Configuration do job do Flink). Selecionar todos indica todos os jobs no namespace.
Para mais informações sobre os parâmetros de configuração, consulte Create a Prometheus alert rule. Você também pode crie um modelo de regra de alerta do Prometheus. Para mais informações, consulte Create a Prometheus alert rule template.
Configuração de alertas de eventos
Apenas eventos de falha de job são suportados. Configure isso selecionando a regra Job Failed no metric alert configuration. Atualmente, não há suporte para outros alertas de eventos. Você pode configurá-los por meio do CloudMonitor event alert configuration.
FAQ
Como verificar o tipo de service de monitoramento de um workspace
Como adicionar um chatbot do DingTalk para alertas no Development Console
Como criar um webhook no Development Console
Documentos relacionados
O Realtime Compute for Apache Flink permite que você escolha o CloudMonitor (um service gratuito) ou o ARMS Prometheus Monitoring para fornecer funções de monitoramento e alerta de jobs. Para uma comparação detalhada de recursos, custos e muito mais, consulte Feature comparison between CloudMonitor and ARMS alert services.
O ARMS oferece suporte à configuração de recursos como políticas de escalonamento e agendamento. Para mais informações, consulte Escalation policy e tutoriais de prática relacionados.
O CloudMonitor oferece suporte ao recebimento de notificações de alerta por meio de grupos do DingTalk, grupos do Lark e muito mais. Para detalhes de configuração, consulte Alert notification methods.
Para mais informações sobre as métricas de monitoramento suportadas, consulte Monitoring metrics.
Você pode desativar o monitoramento e os alertas ou descartar métricas específicas (ao usar o ARMS) para economizar custos. Você pode retomar a coleta de métricas posteriormente, se necessário. Para operações específicas, consulte Discard or restore monitoring metrics.