Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
statistiche
Utilizza stats
per creare visualizzazioni dei dati di log come grafici a barre, grafici a linee e grafici ad area in pila. Ciò consente di identificare in modo più efficiente i modelli nei dati di registro. CloudWatch Logs Insights genera visualizzazioni per le query che utilizzano la stats
funzione e una o più funzioni di aggregazione.
Ad esempio, la seguente query in un gruppo di log Route 53 restituisce visualizzazioni che mostrano la distribuzione dei record di Route 53 all'ora, per tipo di query.
stats count(*) by queryType, bin(1h)
Tutte queste query possono produrre grafici a barre. Se la query utilizza la funzione bin()
per raggruppare i dati per un campo nel tempo, è anche possibile visualizzare grafici a linee e grafici ad area in pila.
La funzione bin
supporta le seguenti abbreviazioni e unità di tempo. Per tutte le unità e le abbreviazioni che includono più di un carattere, è supportata l'aggiunta di s per il plurale. Quindi entrambi hr
e hrs
lavorano per specificare gli orari.
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
Argomenti
Visualizzazione dei dati di serie temporali
Le visualizzazioni delle serie temporali funzionano per le query con le seguenti caratteristiche:
-
La query contiene una o più funzioni di aggregazione. Per ulteriori informazioni, consulta Aggregation Functions in the Stats Command.
-
La query utilizza la funzione
bin()
per raggruppare i dati di un campo.
Queste query possono produrre grafici a linee, grafici ad area in pila, grafici a barre e grafici a torta.
Examples (Esempi)
Per un tutorial completo, consulta Esercitazione: eseguire una query che produce una visualizzazione serie temporale.
Di seguito sono riportati altri esempi di query che funzionano per la visualizzazione delle serie temporali.
La seguente query genera una visualizzazione dei valori medi del campo myfield1
, con un punto dati creato ogni cinque minuti. Ogni punto dati è l'aggregazione delle medie dei valori myfield1
dei log dei cinque minuti precedenti.
stats avg(myfield1) by bin(5m)
La seguente query genera una visualizzazione di tre valori basati su campi diversi, con un punto dati creato ogni cinque minuti. La visualizzazione viene generata perché la query contiene funzioni di aggregazione e usa bin()
come campo di raggruppamento.
stats avg(myfield1), min(myfield2), max(myfield3) by bin(5m)
Restrizioni del grafico a linee e del grafico ad area in pila
Le query che aggregano le informazioni sulle voci di log, ma non utilizzano la funzione bin()
, possono generare grafici a barre. Tuttavia, le query non possono generare grafici a linee o grafici ad area in pila. Per ulteriori informazioni su questi tipi di query, consulta Visualizzazione dei dati di log raggruppati per campi.
Visualizzazione dei dati di log raggruppati per campi
È possibile produrre grafici a barre per le query che utilizzano la funzione stats
e una o più funzioni di aggregazione. Per ulteriori informazioni, consulta Aggregation Functions in the Stats Command.
Per visualizzare la visualizzazione, eseguire la query. Quindi scegliere la scheda Visualization (Visualizzazione) selezionare la freccia accanto a Linea (Linea), e scegliere Bar (barra). Le visualizzazioni sono limitate a un massimo di 100 barre nel grafico a barre.
Examples (Esempi)
Per un tutorial completo, consulta Esercitazione: eseguire una query che produce una visualizzazione raggruppata per campi di log. I paragrafi seguenti includono ulteriori query di esempio per la visualizzazione in base ai campi.
La seguente query di log di flusso VPC trova il numero medio di byte trasferiti per sessione per ogni indirizzo di destinazione.
stats avg(bytes) by dstAddr
È inoltre possibile produrre un grafico che include più di una barra per ogni valore risultante. Ad esempio, la query del log di flusso VPC seguente trova il numero medio e massimo di byte trasferiti per sessione per ogni indirizzo di destinazione.
stats avg(bytes), max(bytes) by dstAddr
La query seguente trova il numero di registro di query Amazon Route 53 per ogni tipo di query.
stats count(*) by queryType
Utilizzo di più comandi stats in un'unica query
È possibile utilizzare fino a due comandi stats
in un'unica query. Ciò consente di eseguire un'aggregazione aggiuntiva sull'output della prima aggregazione.
Esempio: interrogazione con due comandi stats
Ad esempio, la seguente query trova innanzitutto il volume di traffico totale in contenitori da 5 minuti, quindi calcola il volume di traffico più alto, più basso e medio tra questi contenitori da 5 minuti.
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
Esempio: combinazione di più comandi stats con altre funzioni come filter
, fields
e bin
È possibile combinare due comandi stats
con altri comandi come filter
e fields
in un'unica query. Ad esempio, la seguente query trova il numero di indirizzi IP distinti nelle sessioni e trova il numero di sessioni per piattaforma client, filtra tali indirizzi IP e infine trova la media delle richieste di sessione per piattaforma client.
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
È possibile utilizzare le funzioni bin
e dateceil
nelle query con più comandi stats
. Ad esempio, la seguente query combina prima i messaggi in blocchi da 5 minuti, quindi aggrega i blocchi da 5 minuti in blocchi da 10 minuti e calcola i volumi di traffico più alti, più bassi e medi all'interno di ogni blocco di 10 minuti.
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)
Note e limitazioni
Una query può avere al massimo due comandi stats
. Questa quota non può essere modificata.
Se si utilizza un comando sort
o limit
, questo deve apparire dopo il secondo comando stats
. Se è precedente al secondo comando stats
, la query non è valida.
Quando una query ha due comandi stats
, i risultati parziali della query non iniziano a essere visualizzati fino al completamento della prima aggregazione stats
.
Nel secondo comando stats
di un'unica query, è possibile fare riferimento solo ai campi definiti nel primo comando stats
. Ad esempio, la seguente query non è valida perché il campo @message
non sarà disponibile dopo la prima aggregazione 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
Tutti i campi a cui si fa riferimento dopo il primo comando stats
devono essere definiti in tale primo 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
La funzione bin
utilizza sempre implicitamente il campo @timestamp
. Ciò significa che non è possibile utilizzare bin
nel secondo comando stats
senza utilizzare il primo comando stats
per propagare il campo timestamp
. Ad esempio, la query seguente non è valida.
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
Definisci invece il campo @timestamp
nel primo comando stats
, quindi potrai utilizzarlo con dateceil
nel secondo comando stats
, come nell'esempio seguente.
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)
Funzioni da utilizzare con le statistiche
CloudWatch Logs Insights supporta sia le funzioni di aggregazione delle statistiche che le funzioni non di aggregazione delle statistiche.
Utilizza funzioni di aggregazione delle statistiche nel comando stats
e come argomenti per altre funzioni.
Funzione | Tipo di risultato | Descrizione |
---|---|---|
|
number |
La media dei valori nel campo specificato. |
|
number |
Conta i log eventi. |
|
number |
Restituisce il numero di valori univoci per il campo. Se il campo dispone di alta cardinalità (contiene molti valori univoci), il valore restituito da |
|
LogFieldValue |
Il numero massimo di valori per questo campo di log nei log di query. |
|
LogFieldValue |
Il numero minimo di valori per questo campo di log nei log di query. |
|
LogFieldValue |
Un percentile indica lo stato relativo di un valore in un set di dati. Ad esempio, |
|
number |
La deviazione standard dei valori nel campo specificato. |
|
number |
La somma dei valori nel campo specificato. |
Funzioni di non aggregazione delle statistiche
Utilizza funzioni di non aggregazione nel comando stats
e come argomenti per altre funzioni.
Funzione | Tipo di risultato | Descrizione |
---|---|---|
|
LogField |
Restituisce il valore di |
|
LogField |
Restituisce il valore di |
|
LogField |
Restituisce il valore di |
|
LogField |
Restituisce il valore di |