Documentation

Variable types

This page documents an earlier version of InfluxDB. InfluxDB v2.6 is the latest stable version. View this page in the v2.6 documentation.

Variable types determine how a variable’s list of possible values is populated. The following variable types are available:

Map

Map variables use a list of key value pairs in CSV format to map keys to specific values. Keys populate the variable’s value list in the InfluxDB user interface (UI), but values are used when actually processing the query.

The most common use case for map variables is aliasing simple, human-readable keys to complex values.

Map variable example
Juanito MacNeil,"5TKl6l8i4idg15Fxxe4P"
Astrophel Chaudhary,"bDhZbuVj5RV94NcFXZPm"
Ochieng Benes,"YIhg6SoMKRUH8FMlHs3V"
Mila Emile,"o61AhpOGr5aO3cYVArC0"

Query

Query variable values are populated using the _value column of a Flux query.

Query variable example
// List all buckets
buckets()
    |> rename(columns: {"name": "_value"})
    |> keep(columns: ["_value"])

For examples of dashboard variable queries, see Common variable queries.

Important things to note about variable queries

  • The variable will only use values from the _value column. If the data you’re looking for is in a column other than _value, use the rename() or map() functions to change the name of that column to _value.
  • The variable will only use the first table in the output stream. Use the group() function to group everything into a single table.
  • Do not use any predefined dashboard variables in variable queries.

CSV

CSV variables use a CSV-formatted list to populate variable values. A common use case is when the list of potential values is static and cannot be queried from InfluxDB.

CSV variable examples
value1, value2, value3, value4
value1
value2
value3
value4

Use custom dashboard variables

Use the Flux v record and dot or bracket notation to access custom dashboard variables.

For example, to use a custom dashboard variable named exampleVar in a query, reference the variable with v.exampleVar:

from(bucket: "telegraf")
    |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
    |> filter(fn: (r) => r._measurement == "cpu" )
    |> filter(fn: (r) => r._field == "usage_user" )
    |> filter(fn: (r) => r.cpu == v.exampleVar)  

To select variable values:

  • In a dashboard: Use the dashboard variable drop-down menus at the top of your dashboard.
  • In the Script Editor: Click the Variables tab on the right of the Script Editor, click the name of the variable, and then select the variable value from the drop-down menu.

For more on using dashboard variables, see Use and manage variables.


Was this page helpful?

Thank you for your feedback!


Set your InfluxDB URL

Linux Package Signing Key Rotation

All signed InfluxData Linux packages have been resigned with an updated key. If using Linux, you may need to update your package configuration to continue to download and verify InfluxData software packages.

For more information, see the Linux Package Signing Key Rotation blog post.

InfluxDB Cloud backed by InfluxDB IOx

All InfluxDB Cloud organizations created on or after January 31, 2023 are backed by the new InfluxDB IOx storage engine. Check the right column of your InfluxDB Cloud organization homepage to see which InfluxDB storage engine you’re using.

If powered by IOx, this is the correct documentation.

If powered by TSM, see the TSM-based InfluxDB Cloud documentation.

InfluxDB Cloud backed by InfluxDB TSM

All InfluxDB Cloud organizations created on or after January 31, 2023 are backed by the new InfluxDB IOx storage engine which enables nearly unlimited series cardinality and SQL query support. Check the right column of your InfluxDB Cloud organization homepage to see which InfluxDB storage engine you’re using.

If powered by TSM, this is the correct documentation.

If powered by IOx, see the IOx-based InfluxDB Cloud documentation.

State of the InfluxDB Cloud (IOx) documentation

The new documentation for InfluxDB Cloud backed by InfluxDB IOx is a work in progress. We are adding new information and content almost daily. Thank you for your patience!

If there is specific information you’re looking for, please submit a documentation issue.