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à.
Sintassi variabile
Questo argomento della documentazione è progettato per le aree di lavoro Grafana che supportano la versione 10.x di Grafana.
Per le aree di lavoro Grafana che supportano la versione 9.x di Grafana, vedere. Lavorare nella versione 9 di Grafana
Per le aree di lavoro Grafana che supportano la versione 8.x di Grafana, vedere. Funzionamento in Grafana versione 8
I titoli dei pannelli e le query metriche possono fare riferimento a variabili utilizzando due sintassi diverse.
-
$varname
— Questa sintassi è facile da leggere, ma non consente di utilizzare una variabile al centro di una parola.Esempio:
apps.frontend.$server.requests.count
-
${var_name}
— Utilizzate questa sintassi quando desiderate utilizzare una variabile al centro di un'espressione. -
${var_name:<format>}
— Questo formato offre un maggiore controllo sul modo in cui Grafana interpreta i valori. Per ulteriori informazioni, consulta Opzioni avanzate di formato variabile, che segue questo elenco. -
[[varname]]
— Non utilizzare. Questa sintassi è vecchia ed è obsoleta. Verrà rimosso in una versione futura.
Prima che le query vengano inviate alla fonte dati, la query viene interpolata, il che significa che la variabile viene sostituita con il valore corrente. Durante l'interpolazione, è possibile che il valore della variabile venga ignorato per conformarsi alla sintassi del linguaggio di interrogazione e del luogo in cui viene utilizzato. Ad esempio, una variabile utilizzata in un'espressione regex in una query InfluxDB o Prometheus verrà escapitata con regex.
Opzioni avanzate di formato variabile
La formattazione dell'interpolazione delle variabili dipende dall'origine dei dati, ma ci sono alcune situazioni in cui potresti voler modificare la formattazione predefinita.
Ad esempio, l'impostazione predefinita per l'origine dati MySQL consiste nell'unire più valori separati da virgole da virgole:. 'server01','server02'
In alcuni casi, potresti voler avere una stringa separata da virgole senza virgolette:. server01,server02
Puoi farlo accadere con le opzioni avanzate di formattazione delle variabili elencate di seguito.
Sintassi generale
Sintassi: ${var_name:option}
Se viene specificata un'opzione di formattazione non valida, si tratta dell'opzione glob
default/fallback.
CSV
Formatta le variabili con più valori come una stringa separata da virgole.
servers = [ 'test1', 'test2' ] String to interpolate: '${servers:csv}' Interpolation result: 'test1,test2'
Distribuito - OpenTSDB
Formatta le variabili con più valori in formato personalizzato per OpenTSDB.
servers = [ 'test1', 'test2' ] String to interpolate: '${servers:distributed}' Interpolation result: 'test1,servers=test2'
Virgolette doppie
Formatta le variabili a valore singolo e multivalore in una stringa separata da virgole, scade "
in ogni valore per e cita ogni valore con. \"
"
servers = [ 'test1', 'test2' ] String to interpolate: '${servers:doublequote}' Interpolation result: '"test1","test2"'
Glob - Grafite
Formatta le variabili con più valori in un glob (per le query Graphite).
servers = [ 'test1', 'test2' ] String to interpolate: '${servers:glob}' Interpolation result: '{test1,test2}'
JSON
Formatta le variabili con più valori come una stringa separata da virgole.
servers = [ 'test1', 'test2' ] String to interpolate: '${servers:json}' Interpolation result: '["test1", "test2"]'
Lucene - Elasticsearch
Formatta le variabili con più valori in formato Lucene per Elasticsearch.
servers = [ 'test1', 'test2' ] String to interpolate: '${servers:lucene}' Interpolation result: '("test1" OR "test2")'
Codice percentuale
Formatta variabili singole e multivalore da utilizzare nei parametri URL.
servers = [ 'foo()bar BAZ', 'test2' ] String to interpolate: '${servers:percentencode}' Interpolation result: 'foo%28%29bar%20BAZ%2Ctest2'
Tubo
Formatta le variabili con più valori in una stringa separata da pipe.
servers = [ 'test1.', 'test2' ] String to interpolate: '${servers:pipe}' Interpolation result: 'test1.|test2'
Raw
Disattiva la formattazione specifica dell'origine dati, ad esempio le virgolette singole in una query SQL.
servers = [ 'test.1', 'test2' ] String to interpolate: '${var_name:raw}' Interpolation result: 'test.1,test2'
Espressione regolare
Formatta le variabili con più valori in una stringa regex.
servers = [ 'test1.', 'test2' ] String to interpolate: '${servers:regex}' Interpolation result: '(test1\.|test2)'
Citazione singola
Formatta le variabili a valore singolo e multivalore in una stringa separata da virgole, scade '
in ogni valore per e cita ogni valore con. \'
'
servers = [ 'test1', 'test2' ] String to interpolate: '${servers:singlequote}' Interpolation result: "'test1','test2'"
Sqlstring
Formatta le variabili a valore singolo e multivalore in una stringa separata da virgole, scade '
in ogni valore per e cita ogni valore con. ''
'
servers = [ "test'1", "test2" ] String to interpolate: '${servers:sqlstring}' Interpolation result: "'test''1','test2'"
Text (Testo)
Formatta le variabili a valore singolo e multivalore nella loro rappresentazione testuale. Per una singola variabile, restituirà solo la rappresentazione del testo. Per le variabili multivalore, restituirà la rappresentazione del testo combinata con. +
servers = [ "test1", "test2" ] String to interpolate: '${servers:text}' Interpolation result: "test1 + test2"
Parametri di query
Formatta le variabili a valore singolo e multivalore nella loro rappresentazione dei parametri di interrogazione. Esempio: var-foo=value1&var-foo=value2
servers = [ "test1", "test2" ] String to interpolate: '${servers:queryparam}' Interpolation result: "var-servers=test1&var-servers=test2"