Documentation

query.inBucket() function

The query.inBucket() function is experimental and subject to change at any time. By using this function, you accept the risks of experimental functions.

The query.inBucket() function queries data from a specified bucket within given time bounds, filters data by measurement, field, and optional predicate expressions.

Function type: Input

import "experimental/query"

query.inBucket(
  bucket: "example-bucket",
  start: -1h,
  stop: now(),
  measurement: "example-measurement",
  fields: ["exampleField1", "exampleField2"],
  predicate: (r) => true
)

Parameters

bucket

The name of the bucket to query.

Data type: String

start

The earliest time to include in results. Results include points that match the specified start time. Use a relative duration, absolute time, or integer (Unix timestamp in seconds). For example, -1h, 2019-08-28T22:00:00Z, or 1567029600. Durations are relative to now().

Data type: Duration | Time | Integer

stop

The latest time to include in results. Results exclude points that match the specified stop time. Use a relative duration, absolute time, or integer (Unix timestamp in seconds). For example, -1h, 2019-08-28T22:00:00Z, or 1567029600. Durations are relative to now(). Defaults to now().

Data type: Duration | Time | Integer

measurement

The name of the measurement to filter by. Must be an exact string match.

Data type: String

fields

Fields to filter by. Must be exact string matches.

Data type: Array of strings

predicate

A single argument function that evaluates true or false. Records are passed to the function. Those that evaluate to true are included in the output tables. Records that evaluate to null or false are not included in the output tables. Default is (r) => true.

Data type: Function

Examples

Query memory data from host1
import "experimental/query"

query.inBucket(
  bucket: "telegraf",
  start: -1h,
  measurement: "mem",
  fields: ["used_percent", "available_percent"],
  predicate: (r) => r.host == "host1"
)

Function definition

package query

inBucket = (
  bucket,
  start,
  stop=now(),
  measurement,  
  fields=[],
  predicate=(r) => true
) =>
  fromRange(bucket: bucket, start: start, stop: stop)
    |> filterMeasurement(measurement)
    |> filter(fn: predicate)
    |> filterFields(fields)

Used functions:
filter()
query.filterFields()
query.filterMeasurement()
query.fromRange()


New! Cloud or OSS?