Sintaxis variable - Amazon Managed Grafana

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Sintaxis variable

Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la versión 10.x de Grafana.

Para ver los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte. Trabajando en Grafana versión 9

Para ver los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte. Trabajando en Grafana versión 8

Los títulos de los paneles y las consultas métricas pueden hacer referencia a variables mediante dos sintaxis diferentes.

  • $varname— Esta sintaxis es fácil de leer, pero no permite utilizar una variable en mitad de una palabra.

    Ejemplo: apps.frontend.$server.requests.count

  • ${var_name}— Utilice esta sintaxis cuando desee utilizar una variable en medio de una expresión.

  • ${var_name:<format>}— Este formato te da más control sobre cómo Grafana interpreta los valores. Para obtener más información, consulte Opciones avanzadas de formato variable, siguiendo esta lista.

  • [[varname]]— No utilizar. Esta sintaxis es antigua y ha quedado obsoleta. Se eliminará en una versión futura.

Antes de enviar las consultas a la fuente de datos, la consulta se interpola, lo que significa que la variable se reemplaza por su valor actual. Durante la interpolación, es posible que el valor de la variable se escape para ajustarse a la sintaxis del lenguaje de consulta y al lugar en el que se utiliza. Por ejemplo, una variable utilizada en una expresión de expresiones regulares en una consulta de InfluxDB o Prometheus será regex escape.

Opciones avanzadas de formato variable

El formato de la interpolación de variables depende de la fuente de datos, pero hay algunas situaciones en las que es posible que desee cambiar el formato predeterminado.

Por ejemplo, el valor predeterminado de la fuente de datos de MySQL es unir varios valores separados por comas entre comillas:. 'server01','server02' En algunos casos, es posible que desee tener una cadena separada por comas sin comillas:. server01,server02 Puede hacer que eso suceda con las opciones avanzadas de formato variable que se enumeran a continuación.

Sintaxis general

Sintaxis: ${var_name:option}

Si se especifica alguna opción de formato no válida, entonces glob es la opción predeterminada/alternativa.

CSV

Formatea las variables con varios valores como una cadena separada por comas.

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:csv}' Interpolation result: 'test1,test2'

Distribuido: OpenTSDB

Formatea variables con varios valores en un formato personalizado para OpenTSDB.

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:distributed}' Interpolation result: 'test1,servers=test2'

Comilla doble

Formatea las variables de uno o varios valores en una cadena separada por comas, separa cada valor por \" y cita cada valor con. " "

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:doublequote}' Interpolation result: '"test1","test2"'

Glob: grafito

Formatea las variables con varios valores en un globo (para consultas de Graphite).

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:glob}' Interpolation result: '{test1,test2}'

JSON

Formatea las variables con varios valores como una cadena separada por comas.

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:json}' Interpolation result: '["test1", "test2"]'

Lucene - Elasticsearch

Formatea variables con varios valores en formato Lucene para Elasticsearch.

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:lucene}' Interpolation result: '("test1" OR "test2")'

Código porcentual

Formatea variables de uno o varios valores para usarlas en los parámetros de URL.

servers = [ 'foo()bar BAZ', 'test2' ] String to interpolate: '${servers:percentencode}' Interpolation result: 'foo%28%29bar%20BAZ%2Ctest2'

Tubo

Formatea las variables con varios valores en una cadena separada por tuberías.

servers = [ 'test1.', 'test2' ] String to interpolate: '${servers:pipe}' Interpolation result: 'test1.|test2'

Sin procesar

Desactiva el formato específico de la fuente de datos, como las comillas simples en una consulta SQL.

servers = [ 'test.1', 'test2' ] String to interpolate: '${var_name:raw}' Interpolation result: 'test.1,test2'

Regex

Formatea las variables con varios valores en una cadena de expresiones regulares.

servers = [ 'test1.', 'test2' ] String to interpolate: '${servers:regex}' Interpolation result: '(test1\.|test2)'

Cita única

Formatea las variables de uno o varios valores en una cadena separada por comas, separa cada valor por y ' cita cada valor con\'. '

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:singlequote}' Interpolation result: "'test1','test2'"

Cadena SQL

Formatea las variables de uno o varios valores en una cadena separada por comas, escapa ' en cada valor y cita cada valor con''. '

servers = [ "test'1", "test2" ] String to interpolate: '${servers:sqlstring}' Interpolation result: "'test''1','test2'"

Text

Formatea las variables de uno o varios valores para incluirlas en su representación textual. Para una sola variable, simplemente devolverá la representación de texto. Para las variables con varios valores, devolverá la representación de texto combinada con+.

servers = [ "test1", "test2" ] String to interpolate: '${servers:text}' Interpolation result: "test1 + test2"

Parámetros de consulta

Formatea las variables de uno o varios valores para incluirlas en su representación de parámetros de consulta. Ejemplo: var-foo=value1&var-foo=value2

servers = [ "test1", "test2" ] String to interpolate: '${servers:queryparam}' Interpolation result: "var-servers=test1&var-servers=test2"