pattern - Amazon CloudWatch Logs

pattern

Use pattern para agrupar automaticamente seus dados de log em padrões.

Um padrão é uma estrutura de texto compartilhada que se repete entre seus campos de log. É possível usar pattern para revelar tendências emergentes, monitorar erros conhecidos e identificar linhas de log que ocorrem com frequência ou de alto custo. O CloudWatch Logs Insights também fornece uma experiência de console que você pode usar para encontrar e analisar melhor padrões de eventos de log. Para ter mais informações, consulte Análise de padrões.

Como o comando pattern identifica padrões comuns automaticamente, você pode usá-lo como ponto de partida para pesquisar e analisar os logs. Você também pode combinar pattern com os comandos  filter parse, ou  sort para identificar padrões em consultas mais ajustadas.

Entrada do comando pattern

O comando pattern espera uma das seguintes entradas: o campo @message, um campo extraído criado usando o comando  parse ou uma string manipulada usando uma ou mais Funções string.

Se o CloudWatch Logs não puder inferir o tipo de dados que um token dinâmico representa, ele o exibirá como <Token-número>, e o número indicará onde esse token aparece no padrão, em comparação com os outros tokens dinâmicos.

Exemplos comuns de tokens dinâmicos incluem códigos de erro, endereços IP, timestamps e IDs de solicitação.

Saída do comando pattern

O comando pattern produzirá a seguinte saída:

  • @pattern: uma estrutura de texto compartilhada que se repete entre seus campos de eventos de log. Os campos que variam dentro de um padrão, como um ID da solicitação ou um timestamp, são representados por tokens. Se o CloudWatch Logs puder determinar o tipo de dados que um token dinâmico representa, ele exibirá o token como <string-number>. A string é uma descrição do tipo de dados que o token representa. O número mostra onde esse token aparece no padrão, em comparação com os outros tokens dinâmicos.

    O CloudWatch Logs atribui a parte de string do nome com base na análise do conteúdo dos eventos de log que a contêm.

    Se o CloudWatch Logs não puder inferir o tipo de dados que um token dinâmico representa, ele o exibirá como <Token-número>, e o número indicará onde esse token aparece no padrão, em comparação com os outros tokens dinâmicos.

    Por exemplo, [INFO] Request time: <Time-1> ms é uma saída potencial para a mensagem de log [INFO] Request time: 327 ms.

  • @ratio: a proporção de eventos de log de um período selecionado e grupos de registros especificados que correspondem a um padrão identificado. Por exemplo, se metade dos eventos de log nos grupos de logs e no período de tempo selecionados corresponderem ao padrão, @ratio retornará 0.50

  • @sampleCount: o número de eventos de log de um período selecionado e grupos de logs especificados que correspondem a um padrão identificado.

  • @severityLabel: a severidade ou o nível do log que indica o tipo de informação contida em um log. Por exemplo, Error, Warning, Info ou Debug.

Exemplos

O comando a seguir identifica logs com estruturas semelhantes em grupos de logs especificados no intervalo de tempo selecionado, agrupando-os por padrão e contagem

pattern @message

O comando pattern pode ser usado em combinação com o comando  filter

filter @message like /ERROR/ | pattern @message

O comando pattern pode ser usado com os comandos parse sort

filter @message like /ERROR/ | parse @message 'Failed to do: *' as cause | pattern cause | sort @sampleCount asc