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à.
Questo argomento della documentazione è progettato per le aree di lavoro Grafana che supportano la versione 9.x di Grafana.
Per le aree di lavoro Grafana che supportano la versione 10.x di Grafana, vedere. Funzionamento nella versione 10 di Grafana
Per le aree di lavoro Grafana che supportano la versione 8.x di Grafana, vedere. Funzionamento in Grafana versione 8
Le trasformazioni sono un modo efficace per manipolare i dati restituiti da una query prima che il sistema applichi una visualizzazione. Utilizzando le trasformazioni, è possibile:
-
Rinominare i campi
-
Unisci i dati delle serie temporali
-
Esegui operazioni matematiche su più query
-
Usa l'output di una trasformazione come input per un'altra trasformazione
Per gli utenti che si affidano a più visualizzazioni dello stesso set di dati, le trasformazioni offrono un metodo efficiente per creare e gestire numerose dashboard.
È inoltre possibile utilizzare l'output di una trasformazione come input per un'altra trasformazione, il che si traduce in un aumento delle prestazioni.
Nota
A volte il sistema non è in grado di rappresentare graficamente i dati trasformati. Quando ciò accade, fai clic sull'interruttore della visualizzazione Tabella sopra la visualizzazione per passare a una visualizzazione tabellare dei dati. Questo può aiutarti a comprendere il risultato finale delle tue trasformazioni.
Tipi di trasformazione
Grafana offre diversi modi per trasformare i dati. Di seguito è riportato un elenco completo delle funzioni di trasformazione.
Ordine delle trasformazioni
Quando sono presenti più trasformazioni, Grafana le applica nell'ordine in cui sono elencate. Ogni trasformazione crea un set di risultati che poi passa alla trasformazione successiva nella pipeline di elaborazione.
L'ordine in cui Grafana applica le trasformazioni influisce direttamente sui risultati. Ad esempio, se utilizzi una trasformazione Reduce per condensare tutti i risultati di una colonna in un unico valore, puoi applicare le trasformazioni solo a quel singolo valore.
Aggiungi una funzione di trasformazione ai dati
I seguenti passaggi ti guidano nell'aggiunta di una trasformazione ai dati.
Per aggiungere una trasformazione a un pannello
-
Vai al pannello in cui desideri aggiungere una o più trasformazioni.
-
Scegliete il titolo del pannello e fate clic su Modifica.
-
Seleziona la scheda Transform (Trasformazione).
-
Scegli una trasformazione. Viene visualizzata una riga di trasformazione in cui è possibile configurare le opzioni di trasformazione.
-
Per applicare un'altra trasformazione, scegli Aggiungi trasformazione. Questa trasformazione agisce sul set di risultati restituito dalla trasformazione precedente.
Esegui il debug di una trasformazione
Per visualizzare i set di risultati in ingresso e in uscita della trasformazione, scegliete l'icona del bug sul lato destro della riga di trasformazione.
I set di risultati di input e output possono aiutarti a eseguire il debug di una trasformazione.
Eliminare una trasformazione
Ti consigliamo di rimuovere le trasformazioni che non ti servono. Quando elimini una trasformazione, rimuovi i dati dalla visualizzazione.
Prerequisiti:
Identifica tutte le dashboard che si basano sulla trasformazione e informa gli utenti della dashboard interessati.
Per eliminare una trasformazione
-
Aprire un pannello per modificarlo.
-
Seleziona la scheda Transform (Trasformazione).
-
Scegli l'icona del cestino accanto alla trasformazione che desideri eliminare.
Funzioni di trasformazione
È possibile eseguire le seguenti trasformazioni sui dati.
Aggiungi campo dal calcolo
Usa questa trasformazione per aggiungere un nuovo campo calcolato da altri due campi. Ogni trasformazione consente di aggiungere un nuovo campo.
-
Modalità: seleziona una modalità:
-
Riduci riga: applica il calcolo selezionato su ciascuna riga di campi selezionati in modo indipendente.
-
Opzione binaria: applica operazioni matematiche di base (somma, moltiplica, ecc.) sui valori in una singola riga da due campi selezionati.
-
-
Nome campo: seleziona i nomi dei campi che desideri utilizzare nel calcolo per il nuovo campo.
-
Calcolo: se si seleziona la modalità Riduci righe, viene visualizzato il campo Calcolo. Fai clic sul campo per visualizzare un elenco di scelte di calcolo che puoi utilizzare per creare il nuovo campo. Per informazioni sui calcoli disponibili, consulta Tipi di calcolo.
-
Operazione: se si seleziona la modalità opzione binaria, vengono visualizzati i campi Operazione. Questi campi consentono di eseguire operazioni matematiche di base sui valori in un'unica riga da due campi selezionati. È inoltre possibile utilizzare valori numerici per operazioni binarie.
-
Alias: (Facoltativo) Inserisci il nome del nuovo campo. Se lasci questo campo vuoto, al campo verrà assegnato un nome corrispondente al calcolo.
-
Sostituisci tutti i campi: (Facoltativo) Seleziona questa opzione se desideri nascondere tutti gli altri campi e visualizzare solo il campo calcolato nella visualizzazione.
Concatena i campi
Questa trasformazione combina tutti i campi di tutti i frame in un unico risultato. Considerate queste due domande.
Interrogazione A:
Temp | Operatività |
---|---|
15.4 |
1230233 |
Interrogazione B:
AQI | Errori |
---|---|
3.2 |
5 |
Dopo aver concatenato i campi, il frame di dati sarebbe:
Temp | Operatività | AQI | Errori |
---|---|---|---|
15,4 |
1230233 |
3.2 |
5 |
Config dai risultati della query
Questa trasformazione consente di selezionare una query e da essa estrarre opzioni standard come Min, Max, Unit e Thresholds e applicarle ad altri risultati della query. Ciò consente una configurazione dinamica della visualizzazione basata sulle query.
Se desideri estrarre una configurazione unica per ogni riga del risultato della query di configurazione, prova la trasformazione da righe a campi.
Opzioni
-
Interrogazione di configurazione: seleziona la query che restituisce i dati che desideri utilizzare come configurazione.
-
Applica a: seleziona i campi o le serie a cui applicare la configurazione.
-
Applica alle opzioni: in genere un tipo di campo o un'espressione regolare del nome di campo a seconda dell'opzione selezionata in Applica a.
Converti il tipo di campo
Questa trasformazione modifica il tipo di campo del campo specificato.
-
Campo: seleziona uno dei campi disponibili
-
as: seleziona il formato FieldType in cui convertire
-
Numerico: tenta di rendere numerici i valori
-
Stringa: renderà i valori stringhe
-
Ora: tenta di analizzare i valori come tempo
-
Mostrerà un'opzione per specificare un DateFormat come input da una stringa come yyyy-mm-dd o DD MM YYYY hh:mm:ss
-
-
Booleano: renderà i valori booleani
-
Ad esempio, è possibile modificare la seguente query selezionando il campo orario come Ora e il formato della data come YYYY.
Orario | Segna | Valore |
---|---|---|
01/07/2017 |
sopra |
25 |
02/08/2018 |
sotto |
22 |
02/09/2019 |
sotto |
29 |
04/10/2020 |
sopra |
22 |
Il risultato:
Orario | Mark | Valore |
---|---|---|
1/1/2017 |
sopra |
25 |
1/1/2018 |
sotto |
22 |
1/1/2019 |
sotto |
29 |
1/1/2020 |
sopra |
22 |
Filtra i dati per nome
Utilizzate questa trasformazione per rimuovere parti dei risultati della query.
Grafana visualizza il campo Identificatore, seguito dai campi restituiti dalla query.
Puoi applicare i filtri in due modi:
-
Immettere un'espressione regex.
-
Scegli un campo per attivare il filtraggio su quel campo. I campi filtrati vengono visualizzati con testo grigio scuro, i campi non filtrati hanno testo bianco.
Filtra i dati per query
Utilizzate questa trasformazione nei pannelli che hanno più interrogazioni, se volete nascondere una o più interrogazioni.
Grafana visualizza le lettere di identificazione della query in testo grigio scuro. Fai clic su un identificatore di query per attivare il filtro. Se la lettera di interrogazione è bianca, vengono visualizzati i risultati. Se la lettera di interrogazione è scura, i risultati vengono nascosti.
Nota
Questa trasformazione non è disponibile per Graphite perché questa fonte di dati non supporta la correlazione dei dati restituiti con le query.
Filtra i dati per valore
Questa trasformazione consente di filtrare i dati direttamente in Grafana e rimuovere alcuni punti dati dai risultati della query. Hai la possibilità di includere o escludere i dati che soddisfano una o più condizioni da te definite. Le condizioni vengono applicate a un campo selezionato.
Questa trasformazione è utile se l'origine dati non filtra nativamente in base ai valori. È inoltre possibile utilizzarla per restringere i valori da visualizzare se si utilizza una query condivisa.
Le condizioni disponibili per tutti i campi sono:
-
Regex: corrisponde a un'espressione regex
-
Is Null: corrisponde se il valore è nullo
-
Is Not Null: corrisponde se il valore non è nullo
-
Uguale: corrisponde se il valore è uguale al valore specificato
-
Diverso: corrisponde se il valore è diverso dal valore specificato
Le condizioni disponibili per i campi numerici sono:
-
Maggiore: corrisponde se il valore è maggiore del valore specificato
-
Inferiore: corrisponde se il valore è inferiore al valore specificato
-
Maggiore o uguale: corrisponde se il valore è maggiore o uguale
-
Minore o uguale: corrisponde se il valore è inferiore o uguale
-
Intervallo: corrisponde a un intervallo compreso tra un minimo e un massimo specificati, inclusi il minimo e il massimo
Considerate il seguente set di dati:
Orario | Temperatura | Altitude (Altitudine) |
---|---|---|
07/07/2020 11:34:23 |
32 |
101 |
07/07/2020 11:34:22 |
28 |
125 |
07/07/2020 11:34:21 |
26 |
110 |
07/07/2020 11:34:20 |
23 |
98 |
07/07/2020 10:32:24 |
31 |
95 |
07/07/2020 10:31:22 |
20 |
85 |
07/07/2020 9:30:57 |
19 |
101 |
Se includi i punti dati con una temperatura inferiore a 30°C, la configurazione sarà la seguente:
-
Tipo di filtro:
Include
-
Condizione: righe in cui
Temperature
corrispondonoLower Than 30
E otterrete il seguente risultato, in cui sono incluse solo le temperature inferiori a 30°C:
Orario | Temperatura | Altitude (Altitudine) |
---|---|---|
07/07/2020 11:34:22 |
28 |
125 |
07/07/2020 11:34:21 |
26 |
110 |
07/07/2020 11:34:20 |
23 |
98 |
07/07/2020 10:31:22 |
20 |
85 |
07/07/2020 9:30:57 |
19 |
101 |
Puoi aggiungere più di una condizione al filtro. Ad esempio, potresti voler includere i dati solo se l'altitudine è maggiore di 100. A tale scopo, aggiungi tale condizione alla seguente configurazione:
-
Tipo di filtro:
Include
righe cheMatch All
condizionano -
Condizione 1: righe in cui
Temperature
corrispondeLower
a30
-
Condizione 2 - Righe in cui
Altitude
corrispondeGreater
a100
Quando hai più di una condizione, puoi scegliere se desideri che l'azione (includi/escludi) venga applicata alle righe che soddisfano tutte le condizioni o soddisfano una delle condizioni che hai aggiunto.
Nell'esempio precedente abbiamo scelto Abbina tutto perché volevamo includere le righe che hanno una temperatura inferiore a 30 E un'altitudine superiore a 100. Se volessimo invece includere le righe che hanno una temperatura inferiore a 30 O un'altitudine superiore a 100, selezioneremmo Match any. Ciò includerebbe la prima riga dei dati originali, che ha una temperatura di 32°C (non corrisponde alla prima condizione) ma un'altitudine di 101 (che corrisponde alla seconda condizione), quindi è inclusa.
Le condizioni non valide o configurate in modo incompleto vengono ignorate.
Gruppo da
Questa trasformazione raggruppa i dati in base a un valore di campo (colonna) specificato ed elabora i calcoli su ciascun gruppo. Fai clic per visualizzare un elenco di scelte di calcolo.
Ecco un esempio di dati originali.
Orario | ID del server | Temperatura della CPU | Stato del server |
---|---|---|---|
07/07/2020 11:34:20AM |
server 1 |
80 |
Arresto |
07/07/2020 11:34:20 |
server 3 |
62 |
OK |
07/07/2020 10:32:20 |
server 2 |
90 |
Sovraccarico |
07/07/2020 10:31:22 |
server 3 |
55 |
OK |
07/07/2020 9:30:57 |
server 3 |
62 |
Reebooting (Riavvio in corso) |
07/07/2020 9:30:05 |
server 2 |
88 |
OK |
07/07/2020 09:28:06 |
server 1 |
80 |
OK |
07/07/2020 09:25:05 |
server 2 |
88 |
OK |
07/07/2020 09:23:07 |
server 1 |
86 |
OK |
Questa trasformazione avviene in due fasi. Per prima cosa specificate uno o più campi in base ai quali raggruppare i dati. In questo modo verranno raggruppati tutti gli stessi valori di quei campi, come se li avessi ordinati. Ad esempio, se raggruppiamo i dati in base al campo Server ID, i dati verranno raggruppati in questo modo:
Orario | ID del server | Temperatura della CPU | Stato del server |
---|---|---|---|
07/07/2020 11:34:20AM |
server 1 |
80 |
Arresto |
07/07/2020 09:28:06 |
server 1 |
80 |
OK |
07/07/2020 09:23:07 |
server 1 |
86 |
OK |
07/07/2020 10:32:20 |
server 2 |
90 |
Sovraccarico |
07/07/2020 9:30:05 |
server 2 |
88 |
OK |
07/07/2020 09:25:05 |
server 2 |
88 |
OK |
07/07/2020 11:34:20 |
server 3 |
62 |
OK |
07/07/2020 10:31:22 |
server 3 |
55 |
OK |
07/07/2020 9:30:57 |
server 3 |
62 |
Reebooting (Riavvio in corso) |
Tutte le righe con lo stesso valore di Server ID vengono raggruppate.
Dopo aver scelto il campo in base al quale raggruppare i dati, puoi aggiungere vari calcoli sugli altri campi e applicare il calcolo a ciascun gruppo di righe. Ad esempio, potremmo voler calcolare la temperatura media della CPU per ciascuno di questi server. Quindi possiamo aggiungere il calcolo medio applicato al campo della temperatura della CPU per ottenere quanto segue:
ID del server | Temperatura della CPU (media) |
---|---|
server 1 |
82 |
server 2 |
8.6 |
server 3 |
59,6 |
E possiamo aggiungere più di un calcolo. Per esempio:
-
Per il campo Time, possiamo calcolare l'ultimo valore, per sapere quando è stato ricevuto l'ultimo punto dati per ogni server
-
Per il campo Server Status, possiamo calcolare il valore Last per sapere qual è l'ultimo valore di stato per ogni server
-
Per il campo Temperature, possiamo anche calcolare l'ultimo valore per sapere qual è l'ultima temperatura monitorata per ogni server
Otterremmo quindi:
ID del server | Temperatura della CPU (media) | Temperatura della CPU (ultima) | Ora (ultima) | Stato del server (ultimo) |
---|---|---|---|---|
server 1 |
82 |
80 |
07/07/2020 11:34:20 |
Arresto |
server 2 |
8.6 |
90 |
07/07/2020 10:32:20 |
Sovraccarico |
server 3 |
59,6 |
62 |
07/07/2020 11:34:20 |
OK |
Questa trasformazione consente di estrarre le informazioni chiave dalle serie temporali e di visualizzarle in modo conveniente.
Partecipa per campo
Usa questa trasformazione per unire più risultati in un'unica tabella. Ciò è particolarmente utile per convertire i risultati di più serie temporali in un'unica tabella ampia con un campo temporale condiviso.
Connessione interna
Un inner join unisce i dati di più tabelle in cui tutte le tabelle condividono lo stesso valore del campo selezionato. Questo tipo di join esclude i dati in cui i valori non corrispondono in tutti i risultati.
Utilizzate questa trasformazione per combinare i risultati di più query (combinati su un campo di join passato o sulla prima colonna time) in un unico risultato e rilasciate le righe in cui un'unione non può avvenire con successo.
Nell'esempio seguente, due query restituiscono i dati della tabella. Viene visualizzato come due tabelle separate prima di applicare la trasformazione Inner Join.
Interrogazione A:
Orario | Processo | Operatività |
---|---|---|
07/07/2020 11:34:20 |
nodo |
25260122 |
07/07/2020 11:24:20 |
locandina |
123001233 |
07/07/2020 11:14:20 |
locandina |
345001233 |
Interrogazione B:
Orario | Server | Errori |
---|---|---|
07/07/2020 11:34:20 |
server 1 |
15 |
07/07/2020 11:24:20 |
server 2 |
5 |
07/07/2020 11:04:20 |
server 3 |
10 |
Il risultato dopo l'applicazione della trasformazione inner join è simile al seguente:
Orario | Processo | Operatività | Server | Errori |
---|---|---|---|---|
07/07/2020 11:34:20 |
nodo |
25260122 |
server 1 |
15 |
07/07/2020 11:24:20 |
locandina |
123001233 |
server 2 |
5 |
Connessione esterna
Un outer join include tutti i dati di un inner join e le righe in cui i valori non corrispondono in tutti gli input. Mentre l'inner join unisce la Query A e la Query B nel campo temporale, l'outer join include tutte le righe che non corrispondono nel campo time.
Nell'esempio seguente, due query restituiscono i dati della tabella. Viene visualizzato come due tabelle prima di applicare la trasformazione outer join.
Interrogazione A:
Orario | Processo | Operatività |
---|---|---|
07/07/2020 11:34:20 |
nodo |
25260122 |
07/07/2020 11:24:20 |
locandina |
123001233 |
07/07/2020 11:14:20 |
locandina |
345001233 |
Interrogazione B:
Orario | Server | Errori |
---|---|---|
07/07/2020 11:34:20 |
server 1 |
15 |
07/07/2020 11:24:20 |
server 2 |
5 |
07/07/2020 11:04:20 |
server 3 |
10 |
Il risultato dopo l'applicazione della trasformazione outer join è simile al seguente:
Orario | Processo | Tempo di operatività | Server | Errori |
---|---|---|---|---|
07/07/2020 11:04:20 |
server 3 |
10 |
||
07/07/2020 11:14:20 |
locandina |
345001233 |
||
07/07/2020 11:34:20 |
nodo |
25260122 |
server 1 |
15 |
07/07/2020 11:24:20 |
locandina |
123001233 |
server 2 |
5 |
Etichette per i campi
Questa trasformazione modifica i risultati delle serie temporali che includono etichette o tag in una tabella in cui le chiavi e i valori di ogni etichetta sono inclusi nel risultato della tabella. Le etichette possono essere visualizzate come colonne o come valori di riga.
Dato il risultato di una query di due serie temporali:
-
Serie 1: etichette Server=Server A, Datacenter=EU
-
Serie 2 — etichette Server=Server B, Datacenter=EU
In modalità Columns, il risultato è simile al seguente:
Orario | Server | Datacenter | Valore |
---|---|---|---|
07/07/2020 11:34:20 |
Server A |
UE |
1 |
07/07/2020 11:34:20 |
Server B |
UE |
2 |
In modalità «Righe», il risultato ha una tabella per ogni serie e mostra il valore di ogni etichetta in questo modo:
etichetta | value |
---|---|
Server |
Server A |
Datacenter |
UE |
etichetta | value |
---|---|
Server |
Server B |
Datacenter |
UE |
Nome del campo Valore
Se hai selezionato Server come nome del campo Valore, otterrai un campo per ogni valore dell'etichetta Server.
Orario | Datacenter | Server A | Server B |
---|---|---|---|
07/07/2020 11:34:20 |
UE |
1 |
2 |
Comportamento di fusione
Il trasformatore delle etichette per i campi è composto internamente da due trasformazioni separate. Il primo agisce su una singola serie ed estrae le etichette nei campi. La seconda è la trasformazione di fusione che unisce tutti i risultati in un'unica tabella. La trasformazione di unione tenta di unire tutti i campi corrispondenti. Questa fase di unione è obbligatoria e non può essere disattivata.
Nota
La trasformazione di fusione può essere utilizzata da sola ed è descritta in dettaglio di seguito.
Per illustrare ciò, ecco un esempio in cui sono presenti due query che restituiscono serie temporali senza etichette sovrapposte.
-
Serie 1 — labels server=Servera
-
Serie 2 — labels datacenter=EU
Ciò risulterà innanzitutto in queste due tabelle:
Orario | Server | Valore |
---|---|---|
07/07/2020 11:34:20 |
Servire A |
10 |
Orario | Datacenter | Valore |
---|---|---|
07/07/2020 11:34:20 |
UE |
20 |
Dopo l'unione:
Orario | Server | Valore | Datacenter |
---|---|---|---|
07/07/2020 11:34:20 |
Servire A |
10 |
|
07/07/2020 11:34:20 |
20 |
UE |
Unione
Utilizzate questa trasformazione per combinare il risultato di più interrogazioni in un unico risultato. Ciò è utile quando si utilizza la visualizzazione del pannello tabellare. I valori che possono essere uniti vengono combinati nella stessa riga. I valori sono unibili se i campi condivisi contengono gli stessi dati.
Nell'esempio seguente, abbiamo due query che restituiscono i dati della tabella. Viene visualizzato come due tabelle separate prima di applicare la trasformazione.
Interrogazione A:
Orario | Processo | Operatività |
---|---|---|
07/07/2020 11:34:20 |
nodo |
25260122 |
07/07/2020 11:24:20 |
locandina |
123001233 |
Interrogazione B:
Orario | Processo | Errori |
---|---|---|
07/07/2020 11:34:20 |
nodo |
15 |
07/07/2020 11:24:20 |
locandina |
5 |
Ecco il risultato dopo aver applicato la trasformazione Merge:
Orario | Processo | Errori | Operatività |
---|---|---|---|
07/07/2020 11:34:20 |
nodo |
15 |
25260122 |
07/07/2020 11:24:20 |
locandina |
5 |
123001233 |
Organizza i campi
Utilizzate questa trasformazione per rinominare, riordinare o nascondere i campi restituiti dalla query.
Nota
Questa trasformazione funziona solo nei pannelli con una singola interrogazione. Se il pannello ha più interrogazioni, è necessario applicare una trasformazione Outer join o rimuovere le interrogazioni aggiuntive.
Grafana mostra un elenco di campi restituiti dalla query. È possibile:
-
Modifica l'ordine dei campi posizionando il cursore su un campo. Il cursore si trasforma in una mano e quindi puoi trascinare il campo nella nuova posizione.
-
Nascondi o mostra un campo facendo clic sull'icona a forma di occhio accanto al nome del campo.
-
Rinomina i campi digitando un nuovo nome nella casella Rinomina.
Partizione per valori
Questa trasformazione può aiutare a eliminare la necessità di più query sulla stessa origine dati con WHERE
clausole diverse quando si rappresentano graficamente più serie. Prendi in considerazione una tabella SQL di metriche con i seguenti dati:
Orario | Regione | Valore |
---|---|---|
20/10/2022 12:00:00 |
US |
1520 |
20/10/2022 12:00:00 |
UE |
2936 |
20/10/2022 1:00:00 |
US |
1327 |
20/10/2022 1:00:00 |
UE |
912 |
Prima della versione 9.3, se volevi tracciare una linea di tendenza rossa per gli Stati Uniti e una blu per l'UE nello stesso TimeSeries pannello, probabilmente dovevi suddividerla in due domande:
SELECT Time, Value FROM metrics WHERE Time > '2022-10-20' AND Region='US'
SELECT Time, Value FROM metrics WHERE Time > '2022-10-20' AND Region='EU'
Ciò richiede anche che tu sappia in anticipo quali regioni esistono effettivamente nella tabella delle metriche.
Con il trasformatore Partition by values, ora puoi emettere una singola query e dividere i risultati per valori univoci in una o più colonne (fields
) a tua scelta. Nell'esempio seguente viene utilizzato Region
.
SELECT Time, Region, Value FROM metrics WHERE Time > '2022-10-20'
Orario | Regione | Valore |
---|---|---|
20/10/2022 12:00:00 |
US |
1520 |
20/10/2022 1:00:00 |
US |
1327 |
Orario | Regione | Valore |
---|---|---|
20/10/2022 12:00:00 |
UE |
2936 |
20/10/2022 1:00:00 |
UE |
912 |
Ridurre
La trasformazione Reduce applica un calcolo a ogni campo del frame e restituisce un singolo valore. I campi relativi all'ora vengono rimossi quando si applica questa trasformazione.
Considerate l'input:
Interrogazione A:
Orario | Temp | Operatività |
---|---|---|
07/07/2020 11:34:20 |
12.3 |
256122 |
07/07/2020 11:24:20 |
15,4 |
1230233 |
Interrogazione B:
Orario | AQI | Errori |
---|---|---|
07/07/2020 11:34:20 |
6,5 |
15 |
07/07/2020 11:24:20 |
3.2 |
5 |
Il trasformatore di riduzione ha due modalità:
-
Da serie a righe: crea una riga per ogni campo e una colonna per ogni calcolo.
-
Riduci campi: mantiene la struttura del frame esistente, ma comprime ogni campo in un unico valore.
Ad esempio, se hai utilizzato il primo e l'ultimo calcolo con una trasformazione da serie a righe, il risultato sarebbe:
Campo | Primo | Ultimo |
---|---|---|
Temp |
12.3 |
15.4 |
Operatività |
256122 |
1230233 |
AQI |
6,5 |
3.2 |
Errori |
15 |
5 |
I campi Riduci con l'ultimo calcolo restituiscono due frame, ciascuno con una riga:
Interrogazione A:
Temp | Operatività |
---|---|
15.4 |
1230233 |
Interrogazione B:
AQI | Errori |
---|---|
3.2 |
5 |
Rinomina tramite regex
Utilizzate questa trasformazione per rinominare parti dei risultati della query utilizzando un'espressione regolare e un pattern sostitutivo.
È possibile specificare un'espressione regolare, che viene applicata solo alle corrispondenze, insieme a un pattern sostitutivo che supporti i riferimenti a ritroso. Ad esempio, immaginiamo di visualizzare l'utilizzo della CPU per host e di voler rimuovere il nome di dominio. È possibile impostare l'espressione regolare su ([^\.]+)\..+
e il pattern sostitutivo su$1
, web-01.example.com
diventerebbe. web-01
Da righe a campi
La trasformazione da righe a campi converte le righe in campi separati. Ciò può essere utile in quanto i campi possono essere modificati e configurati individualmente. Può anche utilizzare campi aggiuntivi come fonti per la configurazione dinamica dei campi o mapparli alle etichette dei campi. Le etichette aggiuntive possono quindi essere utilizzate per definire nomi di visualizzazione migliori per i campi risultanti.
Questa trasformazione include una tabella di campi che elenca tutti i campi nei dati restituiti dalla query di configurazione. Questa tabella consente di controllare quale campo deve essere mappato a ciascuna proprietà di configurazione (l'opzione*Usa come**). Puoi anche scegliere quale valore selezionare se ci sono più righe nei dati restituiti.
Questa trasformazione richiede:
-
Un campo da usare come origine dei nomi dei campi.
Per impostazione predefinita, la trasformazione utilizza il primo campo stringa come origine. Puoi sovrascrivere questa impostazione predefinita selezionando Nome campo nella colonna Usa come per il campo che desideri utilizzare al suo posto.
-
Un campo da usare come fonte di valori.
Per impostazione predefinita, la trasformazione utilizza il primo campo numerico come origine. Tuttavia, puoi ignorare questa impostazione predefinita selezionando Valore del campo nella colonna Usa come per il campo che desideri utilizzare al suo posto.
Utile per visualizzare i dati in:
-
Gauge
-
Stat
-
Grafico a torta
Associa campi aggiuntivi alle etichette
Se un campo non è mappato alla proprietà di configurazione, Grafana lo utilizzerà automaticamente come sorgente per un'etichetta sul campo di output-
Esempio:
Nome | DataCenter | Valore |
---|---|---|
ServerA |
US |
100 |
Server B |
UE |
200 |
Output:
ServerA (etichette DataCenter: US) | ServerB (etichette: DataCenter: EU) |
---|---|
10 |
20 |
Le etichette aggiuntive possono ora essere utilizzate nel campo Nome visualizzato per fornire nomi di campo più completi.
Se vuoi estrarre la configurazione da una query e applicarla a un'altra, dovresti usare la configurazione dalla trasformazione dei risultati della query.
Esempio
Input:
Nome | Valore | Max |
---|---|---|
ServerA |
10 |
100 |
Server B |
20 |
200 |
Server C |
30 |
300 |
Output:
ServerA (configurazione: max=100) | ServerB (configurazione: max=200) | ServerC (configurazione: max=300) |
---|---|---|
10 |
20 |
30 |
Come puoi vedere, ogni riga dei dati di origine diventa un campo separato. Ogni campo ora ha anche un set di opzioni di configurazione massimo. Opzioni come Min, Max, Unit e Thresholds fanno tutte parte della configurazione del campo e, se impostate in questo modo, verranno utilizzate dalla visualizzazione al posto delle opzioni configurate manualmente nel riquadro delle opzioni dell'editor del pannello.
Prepara le serie temporali
La preparazione della trasformazione delle serie temporali è utile quando un'origine dati restituisce dati di serie temporali in un formato non supportato dal pannello che si desidera utilizzare.
Questa trasformazione consente di risolvere questo problema convertendo i dati delle serie temporali dal formato ampio al formato lungo o viceversa.
Seleziona l'opzione Serie temporale a più fotogrammi per trasformare l'intervallo di dati delle serie temporali dal formato ampio a quello lungo.
Seleziona l'opzione Wide time series per trasformare il frame di dati delle serie temporali dal formato lungo a quello ampio.
Da serie a righe
Utilizzate questa trasformazione per combinare il risultato di più interrogazioni di dati su serie temporali in un unico risultato. Ciò è utile quando si utilizza la visualizzazione del pannello tabellare.
Il risultato di questa trasformazione conterrà tre colonne: Time, Metric e Value. La colonna Metrica viene aggiunta in modo da poter vedere facilmente da quale query proviene la metrica. Personalizza questo valore definendo Label nella query di origine.
Nell'esempio seguente, abbiamo due query che restituiscono dati di serie temporali. Viene visualizzato come due tabelle separate prima di applicare la trasformazione.
Interrogazione A:
Orario | Temperatura |
---|---|
07/07/2020 11:34:20 |
25 |
07/07/2020 10:31:22 |
22 |
07/07/2020 9:30:05 |
19 |
Interrogazione B:
Orario | Umidità |
---|---|
07/07/2020 11:34:20AM |
24 |
07/07/2020 10:32:20 |
29 |
07/07/2020 9:30:57 |
33 |
Ecco il risultato dopo aver applicato la trasformazione Series to rows.
Orario | Parametro | Valore |
---|---|---|
07/07/2020 11:34:20 |
Temperatura |
25 |
07/07/2020 11:34:20 |
Umidità |
22 |
07/07/2020 10:32:20AM |
Umidità |
29 |
07/07/2020 10:31:22 |
Temperatura |
22 |
07/07/2020 9:30:57 |
Umidità |
33 |
07/07/2020 09:30:05 |
Temperatura |
19 |
Ordina per
Questa trasformazione ordinerà ogni frame in base al campo configurato. Quando reverse
è selezionata, i valori verranno restituiti nell'ordine inverso.
Limite
Utilizzate questa trasformazione per limitare il numero di righe visualizzate.
Nell'esempio seguente, abbiamo la seguente risposta dalla fonte di dati:
Orario | Parametro | Valore |
---|---|---|
07/07/2020 11:34:20 |
Temperatura |
25 |
07/07/2020 11:34:20 |
Umidità |
22 |
07/07/2020 10:32:20AM |
Umidità |
29 |
07/07/2020 10:31:22 |
Temperatura |
22 |
07/07/2020 9:30:57 |
Umidità |
33 |
07/07/2020 09:30:05 |
Temperatura |
19 |
Ecco il risultato dopo aver aggiunto una trasformazione Limit con un valore di '3':
Orario | Parametro | Valore |
---|---|---|
07/07/2020 11:34:20 |
Temperatura |
25 |
07/07/2020 11:34:20 |
Umidità |
22 |
07/07/2020 10:32:20AM |
Umidità |
29 |