Documentation

Use Grafana to query and visualize data

Use Grafana to query and visualize data stored in InfluxDB Cloud Serverless.

[Grafana] enables you to query, visualize, alert on, and explore your metrics, logs, and traces wherever they are stored. [Grafana] provides you with tools to turn your time-series database (TSDB) data into insightful graphs and visualizations.

Grafana documentation

Install Grafana or login to Grafana Cloud

If using the open source version of Grafana, follow the Grafana installation instructions to install Grafana for your operating system. If using Grafana Cloud, login to your Grafana Cloud instance.

InfluxDB data source

The InfluxDB data source plugin is included in the Grafana core distribution. Use the plugin to query and visualize data stored in InfluxDB Cloud Serverless with both InfluxQL and SQL.

Grafana 10.3+

The instructions below are for Grafana 10.3+ which introduced the newest version of the InfluxDB core plugin. The updated plugin includes SQL support for InfluxDB v3-based products such as InfluxDB Cloud Serverless.

Create an InfluxDB data source

Which data source you create depends on which query language you want to use to query InfluxDB Cloud Serverless:

  1. In your Grafana user interface (UI), navigate to Data Sources.
  2. Click Add new data source.
  3. Search for and select the InfluxDB plugin.
  4. Provide a name for your data source.
  5. Under Query Language, select either SQL or InfluxQL:

When creating an InfluxDB data source that uses SQL to query data:

  1. Under HTTP:

  2. Under InfluxDB Details:

    • Database: Provide a default bucket name to query. In InfluxDB Cloud Serverless, a bucket functions as a database.
    • Token: Provide an API token with read access to the buckets you want to query.
  3. Click Save & test.

    Grafana InfluxDB data source for InfluxDB Cloud Serverless that uses SQL

When creating an InfluxDB data source that uses InfluxQL to query data:

Map databases and retention policies to buckets

To query InfluxDB Cloud Serverless with InfluxQL, first map database and retention policy (DBRP) combinations to your InfluxDB Cloud buckets. For more information, see Map databases and retention policies to buckets.

  1. Under HTTP:

  2. Under InfluxDB Details:

    • Database: Provide a database name to query. Use the database name that is mapped to your InfluxBD bucket.

    • User: Provide an arbitrary string. This credential is ignored when querying InfluxDB Cloud Serverless, but it cannot be empty.

    • Password: Provide an API token with read access to the buckets you want to query.

    • HTTP Method: Choose one of the available HTTP request methods to use when querying data:

      • POST (Recommended)
      • GET
  3. Click Save & test.

    Grafana InfluxDB data source for InfluxDB Cloud Serverless using InfluxQL

Query InfluxDB with Grafana

After you configure and save a FlightSQL or InfluxDB datasource, use Grafana to build, run, and inspect queries against your InfluxDB bucket.

When working with the InfluxDB SQL implementation, a bucket is equivalent to a database, a measurement is structured as a table, and time, fields, and tags are structured as columns. To learn more, see Query Data.

  1. Click Explore.

  2. In the dropdown, select the saved InfluxDB data source to query.

  3. Use the SQL query form to build your query:

    • Table: Select the measurement to query.

    • Column: Select one or more fields and tags to return as columns in query results.

      With SQL, select the time column to include timestamps with the data. Grafana relies on the time column to correctly graph time series data.

    • Optional: Toggle filter to generate WHERE clause statements.

      • WHERE: Configure condition expressions to include in the WHERE clause.
    • Optional: Toggle group to generate GROUP BY clause statements.

      • GROUP BY: Select columns to group by. If you include an aggregation function in the SELECT list, you must group by one or more of the queried columns. SQL returns the aggregation for each group.
    • Recommended: Toggle order to generate ORDER BY clause statements.

      • ORDER BY: Select columns to sort by. You can sort by time and multiple fields or tags. To sort in descending order, select DESC.
  4. Recommended: Change format to Time series.

    • Use the Format dropdown to change the format of the query results. For example, to visualize the query results as a time series, select Time series.
  5. Click Run query to execute the query.

  1. Click Explore.
  2. In the dropdown, select the InfluxDB data source that you want to query.
  3. Use the InfluxQL query form to build your query:
    • FROM: Select the measurement that you want to query.
    • WHERE: To filter the query results, enter a conditional expression.
    • SELECT: Select fields to query and an aggregate function to apply to each. The aggregate function is applied to each time interval defined in the GROUP BY clause.
    • GROUP BY: By default, Grafana groups data by time to downsample results and improve query performance. You can also add other tags to group by.
  4. Click Run query to execute the query.

To learn about query management and inspection in Grafana, see the Grafana Explore documentation.

Build visualizations with Grafana

For a comprehensive walk-through of creating visualizations with Grafana, see the Grafana documentation.


Was this page helpful?

Thank you for your feedback!


The future of Flux

Flux is going into maintenance mode. You can continue using it as you currently are without any changes to your code.

Flux is going into maintenance mode and will not be supported in InfluxDB 3.0. This was a decision based on the broad demand for SQL and the continued growth and adoption of InfluxQL. We are continuing to support Flux for users in 1.x and 2.x so you can continue using it with no changes to your code. If you are interested in transitioning to InfluxDB 3.0 and want to future-proof your code, we suggest using InfluxQL.

For information about the future of Flux, see the following:

InfluxDB Cloud Serverless