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á.
stats
Use stats
para criar visualizações dos seus dados de log, como gráficos de barras, gráficos de linhas e gráficos de áreas empilhadas. Isso ajuda você a identificar padrões em seus dados de registro com mais eficiência. CloudWatch O Logs Insights gera visualizações para consultas que usam a stats
função e uma ou mais funções de agregação.
Por exemplo, a consulta a seguir em um grupo de logs do Route 53 retorna visualizações que mostram a distribuição dos registros do Route 53 por hora, por tipo de consulta.
stats count(*) by queryType, bin(1h)
Todas essas consultas podem produzir gráficos de barras. Se sua consulta usar a função bin()
para agrupar os dados por um campo ao longo do tempo, você também poderá ver gráficos de linhas e gráficos de áreas empilhadas.
As unidades e abreviações de tempo a seguir são compatíveis com a função bin
. Para todas as unidades e abreviações que incluem mais de um caractere, é permitido adicionar "s" para formar o plural. Assim, ambos hr
e hrs
funcionam para especificar horas.
millisecond
ms
msec
second
s
sec
minute
m
min
hour
h
hr
day
d
week
w
month
mo
mon
quarter
q
qtr
year
y
yr
Tópicos
Visualizar dados de séries temporais
As visualizações de séries temporais funcionam para consultas com as seguintes características:
-
A consulta contém uma ou mais funções de agregação. Para obter mais informações, consulte Aggregation Functions in the Stats Command.
-
A consulta usa a função
bin()
para agrupar os dados por um campo.
Essas consultas podem produzir gráficos de linha, gráficos de áreas empilhadas, gráficos de barras e gráficos de pizza.
Exemplos
Para obter um tutorial completo, consulte Tutorial: Executar uma consulta que produz uma visualização de séries temporais.
Aqui estão mais exemplos de consultas que funcionam para visualização de séries temporais.
A consulta a seguir gera uma visualização dos valores médios do campo myfield1
, com um ponto de dados criado a cada cinco minutos. Cada ponto de dados é a agregação das médias dos valores myfield1
dos logs dos últimos cinco minutos.
stats avg(myfield1) by bin(5m)
A consulta a seguir gera uma visualização dos três valores com base em campos diferentes, com um ponto de dados criado a cada cinco minutos. A visualização é gerada porque a consulta contém funções de agregação e usa bin()
como o campo de agrupamento.
stats avg(myfield1), min(myfield2), max(myfield3) by bin(5m)
Restrições do gráfico de linhas e do gráfico de áreas empilhadas
Consultas que agregam informações de entrada de log, mas que não usam a função bin()
, podem gerar gráficos de barras. No entanto, as consultas não podem gerar gráficos de linha ou gráficos de áreas empilhadas. Para obter mais informações sobre esses tipos de políticas, consulte Visualizar dados de log agrupados por campos.
Visualizar dados de log agrupados por campos
É possível produzir gráficos de barras para consultas que usam a função stats
e uma ou mais funções de agregação. Para obter mais informações, consulte Aggregation Functions in the Stats Command.
Para ver a visualização, execute sua consulta. Depois, escolha a guia Visualization(Visualização), selecione a seta ao lado de Line(Linha) e escolha Bar(Barra). As visualizações estão limitadas a até 100 barras no gráfico de barras.
Exemplos
Para obter um tutorial completo, consulte Tutorial: Executar uma consulta que produz uma visualização agrupada por campos de log. Os parágrafos a seguir incluem mais consultas de exemplo para a visualização por campos.
A consulta de log de VPC fluxo a seguir encontra o número médio de bytes transferidos por sessão para cada endereço de destino.
stats avg(bytes) by dstAddr
Também é possível produzir um gráfico que inclua mais de uma barra para cada valor resultante. Por exemplo, a consulta de log de VPC fluxo a seguir encontra o número médio e máximo de bytes transferidos por sessão para cada endereço de destino.
stats avg(bytes), max(bytes) by dstAddr
A consulta a seguir localiza o número de logs de consulta do Amazon Route 53 para cada tipo de consulta.
stats count(*) by queryType
Use vários comandos de estatísticas em uma única consulta
Você pode usar até dois comandos stats
em uma única consulta. Isso permite executar uma agregação adicional na saída da primeira agregação.
Exemplo: consulta com dois comandos stats
Por exemplo, a consulta a seguir localiza primeiro o volume total de tráfego em compartimentos de cinco minutos e, em seguida, calcula o volume de tráfego mais alto, mais baixo e médio entre esses compartimentos de cinco minutos.
FIELDS strlen(@message) AS message_length | STATS sum(message_length)/1024/1024 as logs_mb BY bin(5m) | STATS max(logs_mb) AS peak_ingest_mb, min(logs_mb) AS min_ingest_mb, avg(logs_mb) AS avg_ingest_mb
Exemplo: combine vários comandos de estatísticas com outras funções, como filter
, fields
e bin
Você pode combinar dois comandos stats
com outros comandos, como filter
e fields
, em uma única consulta. Por exemplo, a consulta a seguir localiza o número de endereços IP distintos nas sessões e localiza o número de sessões por plataforma do cliente, filtra esses endereços IP e, por fim, localiza a média de solicitações de sessão por plataforma do cliente.
STATS count_distinct(client_ip) AS session_ips, count(*) AS requests BY session_id, client_platform | FILTER session_ips > 1 | STATS count(*) AS multiple_ip_sessions, sum(requests) / count(*) AS avg_session_requests BY client_platform
Você pode usar as funções bin
e dateceil
em consultas com vários comandos stats
. Por exemplo, a consulta a seguir primeiro combina mensagens em blocos de cinco minutos, depois agrega esses blocos de cinco minutos em blocos de dez minutos e calcula os volumes de tráfego mais altos, mais baixos e médios dentro de cada bloco de dez minutos.
FIELDS strlen(@message) AS message_length | STATS sum(message_length) / 1024 / 1024 AS logs_mb BY BIN(5m) as @t | STATS max(logs_mb) AS peak_ingest_mb, min(logs_mb) AS min_ingest_mb, avg(logs_mb) AS avg_ingest_mb BY dateceil(@t, 10m)
Observações e limitações
Uma consulta pode ter no máximo dois comandos stats
. Não é possível alterar esta cota.
Se você usar um comando sort
ou limit
, ele deverá aparecer após o segundo comando stats
. Se estiver antes do segundo comando stats
, a consulta não é válida.
Quando uma consulta tem dois comandos stats
, a exibição dos resultados parciais da consulta só começará quando a primeira agregação stats
for concluída.
No segundo comando stats
de uma única consulta, você pode se referir somente aos campos definidos no primeiro comando stats
. Por exemplo, a consulta a seguir não é válida porque o campo @message
não estará disponível após a primeira agregação stats
.
FIELDS @message | STATS SUM(Fault) by Operation # You can only reference `SUM(Fault)` or Operation at this point | STATS MAX(strlen(@message)) AS MaxMessageSize # Invalid reference to @message
Todos os campos que você referenciar após o primeiro comando stats
devem ser definidos nesse primeiro comando stats
.
STATS sum(x) as sum_x by y, z | STATS max(sum_x) as max_x by z # You can only reference `max(sum_x)`, max_x or z at this point
Importante
A função bin
sempre usa implicitamente o campo @timestamp
. Isso significa que você não pode usar bin
no segundo comando stats
sem usar o primeiro comando stats
para propagar o campo timestamp
. Por exemplo, a consulta a seguir não é válida.
FIELDS strlen(@message) AS message_length | STATS sum(message_length) AS ingested_bytes BY @logStream | STATS avg(ingested_bytes) BY bin(5m) # Invalid reference to @timestamp field
Em vez disso, defina o campo @timestamp
no primeiro comando stats
e, em seguida, você poderá usá-lo com dateceil
no segundo comando stats
, como no exemplo a seguir.
FIELDS strlen(@message) AS message_length | STATS sum(message_length) AS ingested_bytes, max(@timestamp) as @t BY @logStream | STATS avg(ingested_bytes) BY dateceil(@t, 5m)
Funções para uso com estatísticas
CloudWatch O Logs Insights suporta funções de agregação de estatísticas e funções de não agregação de estatísticas.
Use funções de agregação de estatísticas no comando stats
e como argumentos de outras funções.
Função | Tipo de resultado | Descrição |
---|---|---|
|
número |
A média dos valores no campo especificado. |
|
número |
Faz a contagem dos eventos de log. |
|
número |
Retorna o número de valores exclusivos do campo. Se o campo tiver cardinalidade muito alta (muitos valores exclusivos), o valor retornado por |
|
LogFieldValue |
O máximo dos valores desse campo de log nos logs consultados. |
|
LogFieldValue |
O mínimo dos valores desse campo de log nos logs consultados. |
|
LogFieldValue |
Um percentil indica a posição relativa de um valor no conjunto de dados. Por exemplo, |
|
número |
O desvio padrão dos valores no campo especificado. |
|
número |
A soma dos valores no campo especificado. |
Funções de estatísticas de não agregação
Use funções de não agregação no comando stats
e como argumentos de outras funções.
Função | Tipo de resultado | Descrição |
---|---|---|
|
LogField |
Retorna o valor de |
|
LogField |
Retorna o valor de |
|
LogField |
Retorna o valor do |
|
LogField |
Retorna o valor do |