docs-v2/content/influxdb/v1/flux/_index.md

1.5 KiB

title description menu alt_links
Flux data scripting language Flux is a functional data scripting language designed for querying, analyzing, and acting on time series data.
influxdb_v1
name weight
Flux 80
v2
/influxdb/v2/query-data/get-started/

Flux is a functional data scripting language designed for querying, analyzing, and acting on time series data. It takes the power of InfluxQL and the functionality of TICKscript and combines them into a single, unified syntax.

Flux is production-ready and included with InfluxDB v1.8+.

Flux design principles

Flux is designed to be usable, readable, flexible, composable, testable, contributable, and shareable. Its syntax is largely inspired by 2018's most popular scripting language, JavaScript, and takes a functional approach to data exploration and processing.

The following example illustrates pulling data from a bucket (similar to an InfluxQL database) for the last five minutes, filtering that data by the cpu measurement and the cpu=cpu-total tag, windowing the data in 1 minute intervals, and calculating the average of each window:

from(bucket:"telegraf/autogen")
  |> range(start:-1h)
  |> filter(fn:(r) =>
    r._measurement == "cpu" and
    r.cpu == "cpu-total"
  )
  |> aggregateWindow(every: 1m, fn: mean)

{{< children >}}