eventstats
Utilizzare il comando eventstats
per ottenere statistiche generali di riepilogo, eventualmente raggruppate per campi, sulle proprietà dei gruppi identificati da qualsiasi comando di raggruppamento, ad esempio stats
, link
o timestats
. Il relativo output includerà un campo per ogni aggregazione.
Sintassi
L'operatore di aggregazione tendenza non è consentito con
eventstats
.
eventstats <stats_function> (<field_name>) [as <new_field_name>] [, <stats_function> (<field_name>) [as <new_field_name>]]* [by <field_name> [, <field_name>]*]
Parametri
La tabella seguente elenca i parametri utilizzati con questo comando e le relative descrizioni.
Parametro | descrizione; |
---|---|
|
Utilizzare questo parametro per specificare il campo in base al quale si desidera raggruppare i risultati. |
|
Utilizzare questo parametro per specificare il nuovo nome per il campo dopo l'applicazione del comando |
Per le funzioni supportate, vedere Funzioni, Funzioni posizionali e Funzioni analisi serie temporale.
Funzioni
La tabella seguente elenca le funzioni disponibili con questo comando, insieme ai relativi esempi.
Funzione | Esempi |
---|---|
Valori Elenca i primi 10 valori per un determinato campo con delimitatore facoltativo. Può essere applicato a qualsiasi tipo di dati di campo. |
|
Univocità Elenca i primi 10 valori univoci per un determinato campo con delimitatore facoltativo. Può essere applicato a qualsiasi tipo di dati di campo. |
|
Meno recente Restituisce il valore non nullo più recente per il campo specificato. Verrà restituito un valore nullo se il campo è completamente vuoto per i risultati di una determinata query. |
|
Più recenti Restituisce il valore non nullo più recente per il campo specificato. Verrà restituito un valore nullo se il campo è completamente vuoto per i risultati di una determinata query. |
|
Medio Nota: questa funzione è supportata solo per i campi numerici. |
|
Conteggio Nota: questa funzione utilizza una semantica simile a sql. In altre parole, count restituisce il conteggio per tutte le righe, ma count(field) restituisce il conteggio per tutte le righe in cui il campo non è nullo. |
|
Conteggio distinti |
|
massimo Nota: questa funzione è supportata solo per i campi numerici. |
|
Mediano Nota: questa funzione è supportata solo per i campi numerici. |
|
minimo Nota: questa funzione è supportata solo per i campi numerici. |
|
Percentuale. Nota: questa funzione è supportata solo per i campi numerici. |
|
Somma Nota: questa funzione è supportata solo per i campi numerici. |
|
Deviazione standard Nota: questa funzione è supportata solo per i campi numerici. |
|
Se nullo Modifica il valore se il valore è nullo. Nota: questa funzione è disponibile solo per le statistiche degli eventi, i geostati, le statistiche e i dati orari (non dopo il collegamento). |
|
Funzioni di posizione
Nella tabella seguente sono elencate le funzioni univoche per questo comando, insieme ai relativi esempi.
Funzione | Esempi |
---|---|
primo Recupera il valore della proprietà dalla prima riga, come definito dal criterio di ordinamento corrente, all'interno del risultato recuperato. |
Sintassi:
|
ultima Recupera il valore della proprietà dall'ultima riga, come definito dal criterio di ordinamento corrente, all'interno del risultato recuperato. |
Sintassi:
|
N/A Recupera il valore della proprietà dalla nth row, come definito dal criterio di ordinamento corrente, all'interno del risultato recuperato. |
Sintassi:
|
ritardo Recupera il valore della proprietà da una riga in corrispondenza di un determinato offset prima della riga corrente. L'offset predefinito è 1. |
Sintassi:
|
portare Recupera il valore della proprietà da una riga in corrispondenza di un determinato offset dopo la riga corrente. L'offset predefinito è 1. |
Sintassi:
|
rownum Assegna un numero univoco in sequenza, a partire da 1, come definito dal criterio di ordinamento corrente a ogni riga all'interno del risultato recuperato. |
Sintassi:
|
Funzioni analisi serie temporale
Nella tabella seguente sono elencate le funzioni per l'analisi delle serie temporali, insieme ai relativi esempi.
Funzione | Esempi |
---|---|
picco Recupera il valore della proprietà con grandezza massima all'interno del risultato recuperato. Un valore di magnitudine più alto indica valori assoluti più grandi. |
Sintassi:
|
punteggio massimo Recupera il valore della proprietà con punteggio massimo normalizzato compreso tra 0 e 1, all'interno del risultato recuperato. Il punteggio può essere utilizzato per confrontare i picchi, con il picco più alto che ottiene 1 come punteggio e tutti gli altri valori compresi tra 0 e 1. |
Sintassi:
|
valle Recupera il valore della proprietà con l'ampiezza della valle all'interno del risultato recuperato. Un valore di magnitudine inferiore indica valori assoluti più piccoli. |
Sintassi:
|
vallescore Recupera il valore della proprietà con punteggio valle normalizzato compreso tra 0 e 1, all'interno del risultato recuperato. Il punteggio può essere utilizzato per confrontare le valli, con la valle minore che ottiene 0 come punteggio e tutti gli altri valori tra 0 e 1. |
Sintassi:
|
Utilizzare le funzioni peak e peakscore per analizzare i dati sequenziali in Link Visualization per ottenere un picco di grandezza e un punteggio normalizzato compreso tra 0 e 1. Ad esempio, la query seguente evidenzia i picchi più alti nel tempo di risposta dell'utente, utilizzando il campo Durata dell'origine log dei log dei log degli accessi:
'Log Source' = 'OCI API Gateway Access Logs'
| link span = 5minute Time, Server
| stats avg(Duration) as 'Avg. Duration'
| sort Server, 'Start Time'
| eventstats peak('Avg. Duration') as 'Peak Magnitude',
peakscore('Avg. Duration') as 'Peak Score' by Server
| highlightgroups priority = high
[ * | where 'Peak Score' > 0.9 ] as 'High Response Time - Needs Attention'

Questa funzione può essere utilizzata per cercare e raggruppare i dati delle serie temporali, ad esempio per identificare tutti gli eventi Fuori memoria che si sono verificati dopo un picco. Un valore più alto per la grandezza indica valori assoluti più grandi. Il punteggio può essere utilizzato per confrontare i picchi, con il picco più alto che ottiene 1 come punteggio e altri un valore compreso tra 0 e 1.
Per esempi sull'uso del comando eventstats
negli scenari standard, vedere:
Raggruppa tutti i log irreversibili per transazione e ottieni il tempo medio complessivo trascorso in tutti i gruppi:
severity = fatal | link 'Transaction ID' | stats avg('Elapsed Time (System)') as 'Average Elapsed Time' | eventstats avg('Average Elapsed Time') as 'Overall Average Elapsed Time'
severity = fatal | stats avg('Elapsed Time (system)') as 'Average Elapsed Time' | eventstats avg('Average elapsed time') as 'Overall Average elapsed time'
Raggruppa tutti i log irreversibili per tipo di entità e transazione e ottieni il tempo medio trascorso complessivo in tutti i gruppi con lo stesso tipo di entità:
severity = fatal | link 'Entity Type', 'Transaction ID' | stats avg('Elapsed Time (System)') as 'Average Elapsed Time' | eventstats avg('Average Elapsed Time') as 'Overall Average Elapsed Time' by 'Entity Type'
severity = fatal | stats avg('Elapsed Time (System)') as 'Average Elapsed Time' by 'Entity Type', 'Transaction ID' | eventstats avg('Average Elapsed Time') as 'Overall Average Elapsed Time' by 'Entity Type'
Nella visualizzazione Collegamento, aggiungere un numero a ogni riga:
'Log Source' = 'Database Alert Logs' and Label != null and Entity = MyDB
| rename Entity as Database
| link span = 1minute Time, Database, Label
| sort Database, 'Start Time'
| eventstats rownum as 'Row Number' by Database
Identificare l'ultimo evento utilizzando il numero di riga:
'Log Source' = 'Database Alert Logs' and Label != null and Entity = MyDB
| rename Entity as Database
| link span = 1minute Time, Database, Label
| sort Database, 'Start Time'
| eventstats rownum as 'Row Number' by Database
| addfields
[ * | where Label = 'Abnormal Termination'
| eventstats last('Row Number') as 'Crash Row'
]
Identificare gli eventi precedenti e successivi di un evento selezionato:
'Log Source' = 'Database Alert Logs' and Label != null and Entity = MyDB
| rename Entity as Database
| link span = 1minute Time, Database, Label
| sort Database, 'Start Time'
| addfields
[ *
| where Label != null
| eventstats lag(Label) as 'Previous Event',
lead(Label) as 'Next Event'
]