Skip to content

InfluxDB from GraphQL

It is possible to query InfluxDB with GraphQL using ES6 with the help of a library called "influx-graphql". This library provides a GraphQL API for InfluxDB and allows you to query InfluxDB using GraphQL syntax.

Here's an example of how you can use the "influx-graphql" library to query InfluxDB with GraphQL using ES6:

import { createInfluxGraphQLSchema } from 'influx-graphql';
import Influx from 'influx';
 
// Create a new InfluxDB client instance
const influx = new Influx.InfluxDB({
  host: 'localhost',
  database: 'mydb',
});
 
// Create a GraphQL schema for InfluxDB using influx-graphql
const schema = createInfluxGraphQLSchema({
  // Specify the InfluxDB client instance
  influx,
  // Specify the database to use
  database: 'mydb',
});
 
// Define a GraphQL query
const query = `
  query {
    measurementName {
      field1 {
        values(limit: 10) {
          time
          value
        }
      }
    }
  }
`;
 
// Execute the query against the GraphQL schema
schema.execute(query).then(result => {
  console.log(result.data);
}).catch(error => {
  console.error(error);
});

In this example, we create a new InfluxDB client instance and a GraphQL schema for InfluxDB using the "createInfluxGraphQLSchema" function provided by the "influx-graphql" library. We then define a GraphQL query using the schema and execute it using the "execute" function.

The query in this example retrieves the values of the "field1" field for a measurement called "measurementName", limiting the results to 10 records.

Note that you will need to install the "influx-graphql" and "influx" packages using npm or yarn before running this code.

Tags

GraphQLInfluxDBnpm