View a markdown version of this page

Painéis de monitoramento e alarmes no Amazon MWAA - Amazon Managed Workflows for Apache Airflow

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Painéis de monitoramento e alarmes no Amazon MWAA

A página de detalhes do ambiente de um ambiente Amazon Managed Workflows para Apache Airflow inclui um painel de CloudWatch métricas integrado e uma tabela de alarmes ambientais. Você pode usar esses recursos para monitorar a integridade do seu ambiente diretamente no console do Amazon MWAA, sem nenhuma configuração adicional.

O Apache Airflow expõe métricas para vários processos, incluindo o número de processos do DAG, o tamanho do pacote do DAG, as tarefas atualmente em execução, as falhas e os sucessos das tarefas. Quando você cria um ambiente, o Apache Airflow envia automaticamente métricas para seu ambiente Amazon MWAA para o. CloudWatch Além do painel integrado, você pode criar painéis personalizados na Amazon CloudWatch e adicionar alarmes para métricas específicas. Quando um alarme está em um painel, ele fica vermelho ao entrar no ALARM estado. Isso facilita o monitoramento proativo da integridade do seu ambiente Amazon MWAA.

Veja o painel de métricas

A página de detalhes do ambiente inclui um painel de CloudWatch métricas integrado, mostrado no console em CloudWatch métricas. Esse CloudWatch painel incorporado exibe gráficos para seu ambiente sem nenhuma configuração adicional.

O painel de CloudWatch métricas na página de detalhes do ambiente Amazon MWAA, mostrando a alternância de recomendações de alarmes, o filtro de seções de métricas e exemplos de gráficos no grupo Contêineres.

Para abrir o conjunto completo de métricas no CloudWatch console, escolha Exibir tudo em CloudWatch.

O painel exibe métricas dos dois CloudWatch namespaces a seguir:

  • AmazonMWAA— Métricas do Apache Airflow.

  • AWS/MWAA— Métricas de contêiner, fila e banco de dados.

Você pode usar os seguintes controles para alterar o que o painel exibe:

  • Ative o botão Recomendações de alarmes para mostrar somente as métricas recomendadas. Quando você ativa essa opção, cada gráfico traça seu limite de alarme como uma anotação. A anotação diz Alarmes se metric acima ou Alarmes se metric abaixo, dependendo da métrica.

  • Use o filtro Seções métricas para mostrar somente os gráficos em um grupo específico. Os grupos disponíveis são Containers, Database and queue, Scheduler, DAG processing , Tasks e Triggerer.

nota

Se você configurar um ambiente para filtrar quais métricas do Apache Airflow ele publica usando as opções de lista de permissões ou lista de bloqueios de métricas, alguns gráficos podem não ter dados.

nota

Para visualizar o painel de métricas, sua identidade do IAM deve ter permissão para ler CloudWatch métricascloudwatch:GetMetricData, incluindocloudwatch:GetMetricStatistics, cloudwatch:ListMetrics e. Sem essas permissões, os gráficos são renderizados sem dados.

Para ver a lista completa de métricas que o Amazon MWAA publica, consulte. Métricas do ambiente Apache Airflow em CloudWatch

Métricas mostradas no painel

O painel organiza os gráficos em seis seções que você pode filtrar com as seções Métricas. Ele mostra um conjunto selecionado de métricas para todo o ambiente; os gráficos vêm do namespace (métricas do Apache Airflow) e do AmazonMWAA namespace (métricas de contêiner, fila e banco AWS/MWAA de dados). A tabela a seguir lista os gráficos em cada seção e as CloudWatch métricas que cada uma exibe.

Gráficos do painel e suas métricas
Seção Gráfico CloudWatch métricas
Contêineres Utilização da CPU do agendador CPUUtilization
Contêineres Utilização da memória do agendador MemoryUtilization
Contêineres Utilização da CPU do trabalhador CPUUtilization(BaseWorker e AdditionalWorker)
Contêineres Utilização da memória do trabalhador MemoryUtilization(BaseWorker e AdditionalWorker)
Contêineres Utilização da CPU do servidor Web CPUUtilization
Contêineres Utilização da memória do servidor Web MemoryUtilization
Contêineres Contentores de trabalhadores em execução Derivado da contagem CPUUtilization de amostras
Contêineres Batimento cardíaco do trabalhador CeleryWorkerHeartbeat
Banco de dados e fila Memória liberável do banco de dados FreeableMemory
Banco de dados e fila Utilização da CPU do banco de dados CPUUtilization
Banco de dados e fila Conexões de banco de dados DatabaseConnections
Banco de dados e fila Latência de gravação do banco de dados WriteLatency
Banco de dados e fila Idade mais antiga da tarefa na fila ApproximateAgeOfOldestTask
Agendador Pulsação do agendador SchedulerHeartbeat
Agendador Duração da seção crítica do agendador CriticalSectionDuration
Agendador Estados das tarefas do agendador TasksExecutable, TasksStarving, TasksWithoutDagRun
Agendador Tarefas eliminadas externamente TasksKilledExternally
Agendador Slots abertos do executor OpenSlots
Processamento DAG Tempo de análise do DAG TotalParseTime
Processamento DAG Tamanho da bolsa DAG DagBagSize
Processamento DAG Erros de importação do DAG ImportErrors, DAGFileRefreshError
Processamento DAG Integridade do processador DAG ProcessorTimeouts, ManagerStalls
Tarefas Fila de tarefas QueuedTasks, RunningTasks
Tarefas Sucessos e fracassos de tarefas TaskInstanceSuccesses, TaskInstanceFailures
Tarefas Tarefas de zumbis eliminadas ZombiesKilled
Acionador Batimento cardíaco desencadeador TriggererHeartbeat
Acionador Acione resultados TriggersSucceeded, TriggersFailed
nota

Os gráficos Triggerer aparecem somente nas versões mais recentes do Apache Airflow. Os resultados do gatilho requerem o Apache Airflow v2.7.2 ou posterior, e o Triggerer heartbeat requer a versão 2.8.1 ou posterior.

O painel mostra métricas agregadas em todo o ambiente. Ele não traça métricas de alta cardinalidade que o Apache Airflow publica por DAG, tarefa, pool, operador ou arquivo DAG, e traça a CPU e a memória do contêiner, mas não todas as métricas do contêiner. Para ver a lista completa das métricas publicadas, consulte Métricas do ambiente Apache Airflow em CloudWatch Métricas de contêiner, fila e banco de dados para Amazon MWAA e.

Crie e monitore alarmes

A página de detalhes do ambiente inclui um painel de Alarmes no qual você cria e gerencia seus alarmes e CloudWatch, em seguida, os monitora no contexto. O painel mostra uma tabela de alarmes ambientais que lista os CloudWatch alarmes atribuídos ao ambiente. O Amazon MWAA combina esses alarmes por CloudWatch namespace e Environment dimensão, portanto, a tabela inclui alarmes criados por você mesmo, não apenas os alarmes recomendados.

O painel Alarmes na página de detalhes do ambiente Amazon MWAA, mostrando os CloudWatch botões Criar alarmes recomendados e Gerenciar em acima da tabela de alarmes ambientais.

O cabeçalho do painel mostra uma contagem em alarme de quantos alarmes do ambiente estão atualmente no ALARM estado. A tabela de alarmes ambientais tem as seguintes colunas.

Nome Status Condição Ação Última atualização
O nome do alarme, vinculado ao alarme no CloudWatch console. O status do alarme: Em alarme, OK ou Dados insuficientes. A condição do alarme, mostrada como para n pontos de dados internos. duration A ação do alarme, como o tópico topic Notificar SNS ou - se o alarme não tiver nenhuma ação. A data e a hora em que o alarme foi atualizado pela última vez.
nota

Para visualizar os alarmes nesta tabela, você deve ter a cloudwatch:DescribeAlarms permissão.

Se o ambiente não tiver alarmes, a tabela de alarmes ambientais está vazia e fornece orientação para criar os alarmes recomendados para começar a monitorar seu ambiente.

O painel Alarmes fornece os dois botões a seguir:

  • Crie alarmes recomendados — Abre uma pilha de CloudFormation criação rápida em uma nova guia. A pilha é nomeada MWAA-alarms-environment-name e cria um conjunto padrão de alarmes recomendados para o ambiente.

  • Gerenciar em CloudWatch — Abre a página de alarmes no CloudWatch console.

Para criar os alarmes recomendados
  1. Abra o console do Amazon MWAA e, em seguida, escolha seu ambiente para abrir a página de detalhes.

  2. Na visualização Monitoramento, localize o painel Alarmes.

  3. Escolha Criar alarmes recomendados. A pilha CloudFormation de criação rápida é aberta em uma nova guia do navegador.

  4. Revise a pilha no CloudFormation console. Se solicitado, selecione a confirmação que CloudFormation pode criar recursos do IAM.

  5. Selecione Criar pilha.

Depois de CloudFormation criar a pilha, os alarmes aparecem na tabela de alarmes ambientais e no console. CloudWatch Para obter mais informações sobre o significado de cada estado de alarme, consulteVisão geral dos estados de alarme.

Quando você escolhe Criar alarmes recomendados, o CloudFormation modelo cria os seguintes alarmes. CloudWatch avalia todos esses alarmes em períodos de 5 minutos (300 segundos).

Visão geral dos estados de alarme

Um alarme de métrica tem estes estados possíveis:

  • OK: a métrica ou a expressão está dentro do limite definido.

  • ALARM: a métrica ou a expressão está fora do limite definido.

  • INSUFFICIENT_DATA: o alarme acabou de ser acionado, a métrica não está disponível ou não há dados suficientes para a métrica determinar o estado do alarme.

Exemplos de painéis e alarmes personalizados

Você pode definir seus próprios painéis e alarmes como infraestrutura, como código para criar painéis personalizados de forma programática ou para padronizar o monitoramento em vários ambientes do Amazon MWAA. Como alternativa ao painel integrado na página de detalhes do ambiente, o tutorial e o CloudFormation modelo a seguir criam um painel de monitoramento personalizado. Esse painel exibe gráficos de métricas selecionadas para seu ambiente Amazon MWAA.

Sobre essas métricas

A lista a seguir descreve cada uma das métricas criadas no painel personalizado pelas definições do tutorial e do modelo nesta seção.

  • QueuedTasks- O número de tarefas com estado em fila. Corresponde à métrica executor.queued_tasks do Apache Airflow.

  • TasksPending- O número de tarefas pendentes no executor. Corresponde à métrica scheduler.tasks.pending do Apache Airflow.

    nota

    Não se aplica ao Apache Airflow v2.2 e versões posteriores.

  • RunningTasks- O número de tarefas em execução no executor. Corresponde à métrica executor.running_tasks do Apache Airflow.

  • SchedulerHeartbeat- O número de check-ins que o Apache Airflow realiza no trabalho do agendador. Corresponde às métricas scheduler_heartbeat do Apache Airflow.

  • TotalParseTime- O número de segundos necessários para digitalizar e importar todos os arquivos DAG uma vez. Corresponde à métrica dag_processing.total_parse_time do Apache Airflow.

Sobre o painel

A imagem a seguir mostra o painel de monitoramento criado pelo tutorial e pela definição do modelo nesta seção.

Esta imagem mostra onde encontrar a opção de Rede privada no console do Amazon MWAA.

Utilizar AWS tutoriais

Você pode usar o AWS tutorial a seguir para criar automaticamente um painel de status de saúde para qualquer ambiente Amazon MWAA que esteja atualmente implantado. Ele também cria CloudWatch alarmes para trabalhadores insalubres e falhas na pulsação do agendador em todos os ambientes do Amazon MWAA.

Utilizar CloudFormation

Você pode usar a definição do CloudFormation modelo nesta seção para criar um painel de monitoramento e CloudWatch, em seguida, adicionar alarmes no CloudWatch console para receber notificações quando uma métrica ultrapassa um determinado limite. Para criar a pilha usando essa definição de modelo, consulte Criação de uma pilha no CloudFormation console. Para adicionar um alarme ao painel, consulte Como usar alarmes.

AWSTemplateFormatVersion: "2010-09-09" Description: Creates MWAA Cloudwatch Dashboard Parameters: DashboardName: Description: Enter the name of the CloudWatch Dashboard Type: String EnvironmentName: Description: Enter the name of the MWAA Environment Type: String Resources: BasicDashboard: Type: AWS::CloudWatch::Dashboard Properties: DashboardName: !Ref DashboardName DashboardBody: Fn::Sub: '{ "widgets": [ { "type": "metric", "x": 0, "y": 0, "width": 12, "height": 6, "properties": { "view": "timeSeries", "stacked": true, "metrics": [ [ "AmazonMWAA", "QueuedTasks", "Function", "Executor", "Environment", "${EnvironmentName}" ] ], "region": "${AWS::Region}", "title": "QueuedTasks ${EnvironmentName}", "period": 300 } }, { "type": "metric", "x": 0, "y": 6, "width": 12, "height": 6, "properties": { "view": "timeSeries", "stacked": true, "metrics": [ [ "AmazonMWAA", "RunningTasks", "Function", "Executor", "Environment", "${EnvironmentName}" ] ], "region": "${AWS::Region}", "title": "RunningTasks ${EnvironmentName}", "period": 300 } }, { "type": "metric", "x": 12, "y": 6, "width": 12, "height": 6, "properties": { "view": "timeSeries", "stacked": true, "metrics": [ [ "AmazonMWAA", "SchedulerHeartbeat", "Function", "Scheduler", "Environment", "${EnvironmentName}" ] ], "region": "${AWS::Region}", "title": "SchedulerHeartbeat ${EnvironmentName}", "period": 300 } }, { "type": "metric", "x": 12, "y": 0, "width": 12, "height": 6, "properties": { "view": "timeSeries", "stacked": true, "metrics": [ [ "AmazonMWAA", "TasksPending", "Function", "Scheduler", "Environment", "${EnvironmentName}" ] ], "region": "${AWS::Region}", "title": "TasksPending ${EnvironmentName}", "period": 300 } }, { "type": "metric", "x": 0, "y": 12, "width": 24, "height": 6, "properties": { "view": "timeSeries", "stacked": true, "region": "${AWS::Region}", "metrics": [ [ "AmazonMWAA", "TotalParseTime", "Function", "DAG Processing", "Environment", "${EnvironmentName}" ] ], "title": "TotalParseTime ${EnvironmentName}", "period": 300 } } ] }'

Como apagar métricas e painéis

Se você excluir um ambiente Amazon MWAA, o painel correspondente também será excluído. CloudWatch as métricas são armazenadas por quinze (15) meses e não podem ser excluídas. O CloudWatch console limita a pesquisa de métricas a duas (2) semanas após a última ingestão de uma métrica para garantir que as instâncias mais atualizadas sejam exibidas em seu ambiente Amazon MWAA. Para saber mais, consulte as CloudWatch Perguntas frequentes https://aws.amazon.com/cloudwatch/faqs/ da Amazon.

Próximas etapas