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á.
Sintaxe de padrões de filtros para filtros de métricas
nota
Como os filtros de métricas diferem nas consultas do CloudWatch Logs Insights
Os filtros de métricas diferem das consultas do CloudWatch Logs Insights porque um valor numérico especificado é adicionado a um filtro de métrica sempre que um log correspondente é encontrado. Para ter mais informações, consulte Configurando valores métricos para um filtro de métrica.
Para obter informações sobre como consultar seus grupos de log com a linguagem de consulta do Amazon CloudWatch Logs Insights, consulte CloudWatch Sintaxe de consulta do Logs Insights.
Exemplos genéricos de padrões de filtros
Para obter mais informações sobre a sintaxe de padrões de filtros genéricos aplicável a filtros de métricas, bem como filtros de assinatura e filtros de eventos de log, consulte Sintaxe de padrões de filtros para filtros de métricas, filtros de assinatura e filtros de eventos de log, que inclui os seguintes exemplos:
Sintaxe de expressões regulares (regex) compatíveis
Como fazer a correspondência de termos em eventos de log não estruturados
Correspondência de termos em eventos de log JSON
Como fazer a correspondência de termos em eventos de log delimitados por espaços
Os filtros de métricas permitem pesquisar e filtrar dados de log que chegam ao CloudWatch Logs, extrair observações métricas dos dados de log filtrados e transformar os pontos de dados em métricas do CloudWatch Logs. Você define os termos e padrões a serem procurados nos dados do log à medida que eles são enviados para o CloudWatch Logs. Filtros de métrica são atribuídos a grupos de logs, e todos os filtros atribuídas a um grupo de logs são aplicados a seus streams de log.
Quando um filtro de métrica corresponde a um termo, ele incrementa a contagem da métrica em um valor numérico especificado. Por exemplo, você pode criar um filtro de métrica que conte a ocorrência da palavra ERRO em seus eventos de log.
É possível atribuir unidades de medida e dimensões a métricas. Por exemplo, se você criar um filtro de métrica que conte as vezes que a palavra ERROR ocorre em seus eventos de log, poderá especificar uma dimensão chamada ErrorCode
para mostrar o número total de eventos de log que contenham a palavra ERROR (ERRO) e filtrar os dados por códigos de erro relatados.
dica
Ao atribuir uma unidade de medida a uma métrica, certifique-se de especificar a correta. Se você alterar a unidade depois, sua alteração pode não entrar em vigor. Para obter a lista completa das unidades compatíveis com o CloudWatch, consulte MetricDatum na Referência da API do Amazon CloudWatch.
Tópicos
Configurando valores métricos para um filtro de métrica
Ao criar um filtro de métrica, você define seu padrão de filtro e especifica o valor da métrica e o valor padrão. Você pode definir valores de métrica para números, identificadores nomeados ou identificadores numéricos. Se você não especificar um valor padrão, o CloudWatch não reportará os dados quando o filtro de métrica não encontrar uma correspondência. Recomendamos que você especifique um valor padrão, mesmo que o valor seja 0. Definir um valor padrão ajuda o CloudWatch a reportar dados com mais precisão e impede que o CloudWatch agregue métricas irregulares. O CloudWatch agrega e reporta valores de métrica a cada minuto.
Quando o filtro de métrica encontra uma correspondência em seus eventos de log, ele incrementa a contagem da métrica de acordo com o valor da métrica. Se o filtro de métrica não encontrar uma correspondência, o CloudWatch reportará o valor padrão da métrica. Por exemplo, seu grupo de logs publica dois registros a cada minuto, o valor de métrica é 1 e o valor padrão é 0. Se o filtro de métrica encontrar correspondências nos dois registros de log no primeiro minuto, o valor de métrica para aquele minuto será 2. Se o filtro de métrica não encontrar correspondências em nenhum dos dois registros durante o segundo minuto, o valor padrão para aquele minuto será 0. Se você atribuir dimensões a métricas geradas por filtros de métrica, não será possível especificar valores padrão para essas métricas.
Você também pode configurar um filtro de métrica para incrementar uma métrica com um valor extraído de um evento de log, em vez de um valor estático. Para ter mais informações, consulte Usando valores em eventos de log para incrementar o valor de uma métrica.
Publicar dimensões com métricas de valores em eventos de log JSON ou delimitados por espaços
Você pode usar o console do CloudWatch ou a CLI da AWS para criar filtros de métrica que publicam dimensões com métricas geradas por eventos de log JSON e delimitados por espaço. As dimensões são pares de valor nome/valor e só estão disponíveis para padrões de filtro JSON e delimitados por espaço. Você pode criar filtros de métrica JSON e delimitados por espaço com até três dimensões. Para obter mais informações sobre dimensões e informações sobre como atribuir dimensões a métricas, consulte as seguintes seções:
Dimensões no Guia do usuário do Amazon CloudWatch
Exemplo: extrair campos de um log Apache e atribuir dimensões no Guia do usuário do Amazon CloudWatch Logs
Importante
As dimensões contêm valores que coletam cobranças iguais às métricas personalizadas. Para evitar cobranças inesperadas, não especifique campos de alta cardinalidade, por exemplo, IPAddress
ou requestID
, como dimensões.
Se você extrair métricas de eventos de log, você será cobrado por métricas personalizadas. Para evitar cobranças elevadas acidentais, a Amazon pode desabilitar seu filtro de métrica se este gerar 1.000 pares de nome/valor diferentes para as dimensões especificadas em um período de tempo específico.
Você pode criar alarmes de faturamento que o notificam sobre suas cobranças estimadas. Para mais informações, consulte Criar um alarme de faturamento para monitorar suas cobranças estimadas da AWS.
Os exemplos a seguir contêm trechos de código que descrevem como especificar dimensões em um filtro de métrica JSON.
Os exemplos a seguir contêm trechos de código que descrevem como especificar dimensões em um filtro de métrica delimitado por espaço.
Usando valores em eventos de log para incrementar o valor de uma métrica
Você pode criar filtros de métrica que publicam valores numéricos encontrados em eventos de log. O procedimento nesta seção usa o seguinte exemplo de filtro de métrica para mostrar como você pode publicar um valor numérico em um evento de log JSON em uma métrica.
{ $.latency = * } metricValue: $.latency
Criar um filtro de métrica que publique um valor em um evento de log
Abra o console do CloudWatch em https://console.aws.amazon.com/cloudwatch/
. -
No painel de navegação, escolha Logs e, em seguida, escolha Grupos de log.
-
Selecione ou crie um grupo de logs.
Para obter mais informações sobre como criar um grupo de logs, consulte Criar um grupo de logs no CloudWatch Logs no Guia do usuário do Amazon CloudWatch Logs.
-
Escolha Actions (Ações) e Create metric filter (Criar filtro de métrica).
-
Em Padrão de filtro, digite
{ $.latency = * }
e escolha Próximo. -
Em Nome da métrica, insira myMetric.
-
Em Valor da métrica, insira
$.latency
. (Opcional) Em Valor padrão, insira 0 e escolha Próximo.
Recomendamos que você especifique um valor padrão, mesmo que o valor seja 0. Definir um valor padrão ajuda o CloudWatch a reportar dados com mais precisão e impede que o CloudWatch agregue métricas irregulares. O CloudWatch agrega e reporta valores de métrica a cada minuto.
Escolha Criar filtro de métrica.
O filtro de métrica de exemplo corresponde ao termo "latency"
no exemplo de evento de log JSON e publica um valor numérico de 50 na métrica MyMetric.
{ "latency": 50, "requestType": "GET" }