Visualizar métricas do CloudFront e de funções de borda - Amazon CloudFront

Visualizar métricas do CloudFront e de funções de borda

É possível visualizar métricas operacionais sobre as distribuições do CloudFront e as funções de borda no console do CloudFront.

Como visualizar métricas do CloudFront e de funções de borda no CloudFront
  1. Faça login no AWS Management Console e abra o console do CloudFront em https://console.aws.amazon.com/cloudfront/v4/home.

  2. No painel de navegação, escolha Monitoring (Monitoramento).

  3. Para visualizar grafos sobre a atividade de uma distribuição do CloudFront ou função de borda específica, selecione uma e, depois, escolha View distribution metrics (Visualizar métricas de distribuição) ou View metrics (Visualizar métricas).

  4. É possível personalizar os gráficos fazendo o seguinte:

    1. Para alterar o intervalo de tempo das informações exibidas nos gráficos, escolha 1h (uma hora), 3h (três horas) ou outro intervalo, ou especifique um intervalo personalizado.

    2. Para alterar a frequência com que o CloudFront atualiza as informações no gráfico, clique na seta para baixo ao lado do ícone de atualização e escolha uma taxa de atualização. A taxa de atualização padrão é de um minuto, mas é possível escolher outras opções.

  5. Para exibir gráficos do CloudFront no console do CloudWatch, escolha Add to dashboard (Adicionar ao painel). É necessário usar a região Leste dos EUA (N. da Virgínia) para visualizar os grafos no console do CloudWatch.

Métricas de distribuição padrão do CloudFront

As seguintes métricas padrão são incluídas para todas as distribuições do CloudFront, sem custo adicional:

Solicitações

O número total de solicitações de visualizador recebidas pelo CloudFront, para todos os métodos HTTP e para solicitações HTTP e HTTPS.

Bytes baixados

O número de bytes obtidos por download por visualizadores para solicitações GET, HEAD e OPTIONS.

Bytes carregados

O número total de bytes dos quais os visualizadores fizeram upload para o CloudFront usando as solicitações POST e PUT.

Taxa de erros 4xx

A porcentagem de todas as solicitações do visualizador para as quais o código de status HTTP da resposta é 4xx.

Taxa de erros 5xx

A porcentagem de todas as solicitações do visualizador para as quais o código de status HTTP da resposta é 5xx.

Taxa de erros total

A porcentagem de todas as solicitações do visualizador para as quais o código de status HTTP da resposta é 4xx ou 5xx.

Essas métricas são mostradas em grafos para cada distribuição do CloudFront na página Monitoramento do console do CloudFront. Em cada gráfico, os totais são exibidos na granularidade de 1 minuto. Além de visualizar os gráficos, também é possível fazer download de relatórios de métricas como arquivos CSV.

Ativar métricas adicionais de distribuição do CloudFront

Além das métricas padrão, é possível ativar outras métricas por um custo adicional. Para obter mais informações sobre o custo, consulte Estimar o custo para as métricas adicionais do CloudFront.

Essas métricas adicionais devem ser ativadas para cada distribuição separadamente:

Taxa de acertos do cache

A porcentagem de todas as solicitações armazenáveis em cache para as quais o CloudFront forneceu o conteúdo do cache. Solicitações HTTP POST e PUT e erros não são considerados solicitações armazenáveis em cache.

Latência de origem

O tempo total gasto de quando o CloudFront recebe uma solicitação até quando começa a fornecer uma resposta à rede (não ao visualizador), para solicitações que são atendidas da origem, não do cache do CloudFront. Isso também é conhecido como latência de primeiro byte ou tempo até o primeiro byte.

Taxa de erro por código de status

A porcentagem de todas as solicitações do visualizador para as quais o código de status HTTP da resposta é um código específico no intervalo 4xx ou 5xx. Essa métrica está disponível para todos os seguintes códigos de erro: 401, 403, 404, 502, 503 e 504.

Você pode ativar métricas adicionais no console do CloudFront com o AWS CloudFormation, com a AWS Command Line Interface (AWS CLI) ou com a API do CloudFront.

Console
Como ativar métricas adicionais
  1. Faça login no AWS Management Console e abra o console do CloudFront em https://console.aws.amazon.com/cloudfront/v4/home.

  2. No painel de navegação, escolha Monitoring (Monitoramento).

  3. Selecione a distribuição para a qual ativar métricas adicionais e selecione View distribution metrics (Visualizar métricas de distribuição).

  4. Selecione Manage additional metrics (Gerenciar métricas adicionais).

  5. Na janela Manage additional metrics (Gerenciar métricas adicionais), ative Enabled (Habilitado). Após a ativação das métricas adicionais, é possível fechar a janela Manage additional metrics (Gerenciar métricas adicionais).

    Após a ativação das métricas adicionais, elas são mostradas em grafos. Em cada gráfico, os totais são exibidos na granularidade de 1 minuto. Além de visualizar os gráficos, também é possível fazer download de relatórios de métricas como arquivos CSV.

CloudFormation

Para ativar métricas adicionais com o CloudFormation, use o tipo de recurso AWS::CloudFront::MonitoringSubscription. O exemplo a seguir mostra a sintaxe do modelo do AWS CloudFormation no formato YAML, para habilitar métricas adicionais.

Type: AWS::CloudFront::MonitoringSubscription Properties: DistributionId: EDFDVBD6EXAMPLE MonitoringSubscription: RealtimeMetricsSubscriptionConfig: RealtimeMetricsSubscriptionStatus: Enabled
CLI

Para gerenciar métricas adicionais com a AWS Command Line Interface (AWS CLI), use um dos seguintes comandos:

Como ativar métricas adicionais para uma distribuição
  • Use o comando create-monitoring-subscription como no exemplo a seguir. Substitua EDFDVBD6EXAMPLE pelo ID da distribuição para a qual você está habilitando métricas adicionais.

    aws cloudfront create-monitoring-subscription --distribution-id EDFDVBD6EXAMPLE --monitoring-subscription RealtimeMetricsSubscriptionConfig={RealtimeMetricsSubscriptionStatus=Enabled}
Como verificar se as métricas adicionais estão ativadas para uma distribuição
  • Use o comando get-monitoring-subscription como no exemplo a seguir. Substitua EDFDVBD6EXAMPLE pelo ID da distribuição que você está verificando.

    aws cloudfront get-monitoring-subscription --distribution-id EDFDVBD6EXAMPLE
Como desativar métricas adicionais para uma distribuição
  • Use o comando delete-monitoring-subscription como no exemplo a seguir. Substitua EDFDVBD6EXAMPLE pelo ID da distribuição para a qual você está desativando métricas adicionais.

    aws cloudfront delete-monitoring-subscription --distribution-id EDFDVBD6EXAMPLE
API

Para gerenciar métricas adicionais com a API do CloudFront, use uma das seguintes operações de API.

Consulte mais informações sobre essas operações de API na documentação de referência da API do AWS SDK ou de outro cliente de API.

Estimar o custo para as métricas adicionais do CloudFront

Quando você ativa métricas adicionais para uma distribuição, o CloudFront envia até oito métricas para o CloudWatch na região Leste dos EUA (N. da Virgínia). O CloudWatch cobra uma taxa baixa e fixa para cada métrica. Essa taxa é cobrada apenas uma vez por mês, por métrica (até 8 métricas por distribuição). É uma taxa fixa, portanto, o custo permanece o mesmo, independentemente do número de solicitações ou respostas que a distribuição do CloudFront recebe ou envia. Para obter a taxa por métrica, consulte a página de definição de preço do Amazon CloudWatch e a Calculadora de definição de preço do CloudWatch. Taxas de API adicionais se aplicam ao recuperar as métricas com a API do CloudWatch.

Métricas de função padrão do Lambda@Edge

É possível usar métricas do CloudWatch para monitorar, em tempo real, problemas nas funções do Lambda@Edge. Não há cobrança adicional por essas métricas.

Quando você associa uma função do Lambda@Edge a um comportamento de cache em uma distribuição do CloudFront, o Lambda começa a enviar métricas para o CloudWatch automaticamente. As métricas estão disponíveis para todas as regiões do Lambda, mas, para visualizar métricas no console do CloudWatch ou obter os dados de métricas de API do CloudWatch, use a região Leste dos EUA (N. da Virgínia) (us-east-1). O nome do grupo de métricas é formatado como: AWS/CloudFront/distribution-ID, em que distribution-ID é o ID da distribuição do CloudFront à qual a função do Lambda@Edge está associada. Para obter mais informações sobre as métricas do CloudWatch, consulte o Guia do usuário do Amazon CloudWatch.

As seguintes métricas padrão são exibidas em grafos para cada função do Lambda@Edge na página Monitoramento do console do CloudFront:

  • 5xxTaxa de erros do Lambda@Edge

  • Erros de execução do Lambda

  • Respostas inválidas do Lambda

  • Aceleradores do Lambda

Os gráficos incluem o número de invocações, erros, limitações e muito mais. Em cada gráfico, os totais são exibidos na granularidade de 1 minuto, agrupados por região da AWS.

Se você vir um pico nos erros que deseja investigar, será possível escolher uma função e visualizar os arquivos de log por região da AWS, até determinar qual função está causando problemas e em qual região da AWS. Para obter mais informações sobre a resolução de erros do Lambda@Edge, consulte:

Métricas padrão do CloudFront Functions

O CloudFront Functions envia métricas operacionais para o Amazon CloudWatch para que você possa monitorar suas funções. A visualização dessas métricas pode ajudar a solucionar problemas, rastrear e depurar problemas. O CloudFront Functions publica as seguintes métricas no CloudWatch:

  • Invocations (Invocações) (FunctionInvocations): o número de vezes que a função foi iniciada (invocada) em um determinado período de tempo.

  • Validation errors (Erros de validação) (FunctionValidationErrors): o número de erros de validação produzidos pela função em um determinado período de tempo. Os erros de validação ocorrem quando a função é executada com êxito, mas retorna dados inválidos (um objeto de evento inválido).

  • Execution errors (Erros de execução) (FunctionExecutionErrors): o número de erros de execução que ocorreram em um determinado período de tempo. Erros de execução ocorrem quando a função falha ao concluir com êxito.

  • Compute utilization (Utilização de computação) FunctionComputeUtilization: a quantidade de tempo que a função levou para ser executada como um percentual do tempo máximo permitido. Por exemplo, um valor de 35 significa que a função foi concluída em 35% do tempo máximo permitido. Esta métrica é um número entre 0 e 100.

    Se esse valor atingir ou estiver próximo de 100, a função usou ou está perto de usar o tempo de execução permitido e as solicitações subsequentes poderão ser submetidas a controle de utilização. Se sua função estiver sendo executada com 80% ou mais de utilização, recomendamos que você revise sua função para reduzir o tempo de execução e melhorar a utilização. Por exemplo, talvez você queira registrar somente erros em log, simplificar qualquer expressão regex complexa ou remover a análise desnecessária de objetos JSON complexos.

  • Limitações(FunctionThrottles): o número de vezes que a função foi limitada em determinado período. As funções podem ser limitadas pelos seguintes motivos:

    • A função excede continuamente o tempo máximo permitido para execução.

    • A função causa erros de compilação.

    • Há um número excepcionalmente alto de solicitações por segundo.

O KeyValueStore do CloudFront também envia as seguintes métricas operacionais para o Amazon CloudWatch:

  • Read requests (Solicitações de leitura) (KvsReadRequests): o número de vezes que a função foi lida com êxito do armazenamento de chave-valor em determinado período.

  • Read errors (Erros de leitura) (KvsReadErrors): o número de vezes que a função falhou ao ler o armazenamento de chave-valor em determinado período.

Todas essas métricas são publicadas no CloudWatch na região Leste dos EUA (Norte da Virgínia) (us-east-1), no namespace do CloudFront. Você também pode visualizar essas métricas no console do CloudWatch. No console do CloudWatch, você pode visualizar as métricas por função ou por função por distribuição.

Você também pode usar o CloudWatch para definir alarmes com base nessas métricas. Por exemplo, você pode definir um alarme com base na métrica de tempo de execução (FunctionComputeUilization), que representa a porcentagem do tempo disponível que a função levou para executar. Quando o tempo de execução atinge determinado valor por certo período. Por exemplo, se você escolher mais de 70% do tempo disponível por 15 minutos contínuos, o alarme será acionado. Especifique o valor do alarme e a respectiva unidade de tempo ao criar o alarme.

nota

O CloudFront Functions envia métricas ao CloudWatch apenas para funções na fase LIVE que são executadas em resposta a solicitações e respostas de produção. Quando você testa uma função, o CloudFront não envia métricas para o CloudWatch. A saída de teste contém informações sobre erros, utilização de computação e logs de funções (instruções console.log()), mas essas informações não são enviadas para o CloudWatch.

Para obter informações sobre como obter essas métricas com a API do CloudWatch, consulte Obter métricas usando a API do Amazon CloudWatch.