515 lines
15 KiB
YAML
515 lines
15 KiB
YAML
aggregate_window:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> aggregateWindow(every: 20m, fn: mean)
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:00:00Z | 250 |
|
|
| 2020-01-01T00:04:00Z | 160 |
|
|
| 2020-01-01T00:12:00Z | 150 |
|
|
| 2020-01-01T00:19:00Z | 220 |
|
|
| 2020-01-01T00:32:00Z | 200 |
|
|
| 2020-01-01T00:51:00Z | 290 |
|
|
| 2020-01-01T01:00:00Z | 340 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:20:00Z | 195 |
|
|
| 2020-01-01T00:40:00Z | 200 |
|
|
| 2020-01-01T01:00:00Z | 290 |
|
|
| 2020-01-01T01:20:00Z | 340 |
|
|
|
|
cumulative_sum:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> cumulativeSum()
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1 |
|
|
| 2020-01-01T00:02:00Z | 2 |
|
|
| 2020-01-01T00:03:00Z | 1 |
|
|
| 2020-01-01T00:04:00Z | 3 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1 |
|
|
| 2020-01-01T00:02:00Z | 3 |
|
|
| 2020-01-01T00:03:00Z | 4 |
|
|
| 2020-01-01T00:04:00Z | 7 |
|
|
|
|
fill_null:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> fill(usePrevious: true)
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | null |
|
|
| 2020-01-01T00:02:00Z | 0.8 |
|
|
| 2020-01-01T00:03:00Z | null |
|
|
| 2020-01-01T00:04:00Z | null |
|
|
| 2020-01-01T00:05:00Z | 1.4 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | null |
|
|
| 2020-01-01T00:02:00Z | 0.8 |
|
|
| 2020-01-01T00:03:00Z | 0.8 |
|
|
| 2020-01-01T00:04:00Z | 0.8 |
|
|
| 2020-01-01T00:05:00Z | 1.4 |
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> fill(value: 0.0)
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | null |
|
|
| 2020-01-01T00:02:00Z | 0.8 |
|
|
| 2020-01-01T00:03:00Z | null |
|
|
| 2020-01-01T00:04:00Z | null |
|
|
| 2020-01-01T00:05:00Z | 1.4 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 0.0 |
|
|
| 2020-01-01T00:02:00Z | 0.8 |
|
|
| 2020-01-01T00:03:00Z | 0.0 |
|
|
| 2020-01-01T00:04:00Z | 0.0 |
|
|
| 2020-01-01T00:05:00Z | 1.4 |
|
|
|
|
first_last:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> first()
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1.0 |
|
|
| 2020-01-01T00:02:00Z | 1.0 |
|
|
| 2020-01-01T00:03:00Z | 2.0 |
|
|
| 2020-01-01T00:04:00Z | 3.0 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1.0 |
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> last()
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1.0 |
|
|
| 2020-01-01T00:02:00Z | 1.0 |
|
|
| 2020-01-01T00:03:00Z | 2.0 |
|
|
| 2020-01-01T00:04:00Z | 3.0 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:04:00Z | 3.0 |
|
|
|
|
group:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> group(columns: ["host"], mode: "by")
|
|
```
|
|
input: |
|
|
| _time | host | _value |
|
|
|:----- |:----: | ------:|
|
|
| 2020-01-01T00:01:00Z | host1 | 1.0 |
|
|
| 2020-01-01T00:01:00Z | host2 | 2.0 |
|
|
| 2020-01-01T00:02:00Z | host1 | 1.0 |
|
|
| 2020-01-01T00:02:00Z | host2 | 3.0 |
|
|
output: |
|
|
| _time | host | _value |
|
|
|:----- |:----: | ------:|
|
|
| 2020-01-01T00:01:00Z | host1 | 1.0 |
|
|
| 2020-01-01T00:02:00Z | host1 | 1.0 |
|
|
|
|
| _time | host | _value |
|
|
|:----- |:----: | ------:|
|
|
| 2020-01-01T00:01:00Z | host2 | 2.0 |
|
|
| 2020-01-01T00:02:00Z | host2 | 3.0 |
|
|
|
|
histogram:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> histogram(
|
|
column: "_value",
|
|
upperBoundColumn: "le",
|
|
countColumn: "_value",
|
|
bins: [100.0, 200.0, 300.0, 400.0],
|
|
)
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:00:00Z | 250.0 |
|
|
| 2020-01-01T00:01:00Z | 160.0 |
|
|
| 2020-01-01T00:02:00Z | 150.0 |
|
|
| 2020-01-01T00:03:00Z | 220.0 |
|
|
| 2020-01-01T00:04:00Z | 200.0 |
|
|
| 2020-01-01T00:05:00Z | 290.0 |
|
|
| 2020-01-01T01:00:00Z | 340.0 |
|
|
output: |
|
|
| le | _value |
|
|
|:-- | ------:|
|
|
| 100.0 | 0.0 |
|
|
| 200.0 | 3.0 |
|
|
| 300.0 | 6.0 |
|
|
| 400.0 | 7.0 |
|
|
|
|
increase:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> increase()
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1 |
|
|
| 2020-01-01T00:02:00Z | 2 |
|
|
| 2020-01-01T00:03:00Z | 8 |
|
|
| 2020-01-01T00:04:00Z | 10 |
|
|
| 2020-01-01T00:05:00Z | 0 |
|
|
| 2020-01-01T00:06:00Z | 4 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:02:00Z | 1 |
|
|
| 2020-01-01T00:03:00Z | 7 |
|
|
| 2020-01-01T00:04:00Z | 9 |
|
|
| 2020-01-01T00:05:00Z | 9 |
|
|
| 2020-01-01T00:06:00Z | 13 |
|
|
|
|
interpolate_linear:
|
|
-
|
|
code: |
|
|
```js
|
|
import "interpolate"
|
|
|
|
data
|
|
|> interpolate.linear(every: 1d)
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2021-01-01T00:00:00Z | 10.0 |
|
|
| 2021-01-02T00:00:00Z | 20.0 |
|
|
| 2021-01-04T00:00:00Z | 40.0 |
|
|
| 2021-01-05T00:00:00Z | 50.0 |
|
|
| 2021-01-08T00:00:00Z | 80.0 |
|
|
| 2021-01-09T00:00:00Z | 90.0 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2021-01-01T00:00:00Z | 10.0 |
|
|
| 2021-01-02T00:00:00Z | 20.0 |
|
|
| 2021-01-04T00:00:00Z | 40.0 |
|
|
| 2021-01-05T00:00:00Z | 50.0 |
|
|
| 2021-01-06T00:00:00Z | 60.0 |
|
|
| 2021-01-07T00:00:00Z | 70.0 |
|
|
| 2021-01-08T00:00:00Z | 80.0 |
|
|
| 2021-01-09T00:00:00Z | 90.0 |
|
|
|
|
join:
|
|
-
|
|
code: |
|
|
```js
|
|
t1 = from(bucket: "example-bucket")
|
|
|> range(start: 2020-01-01T00:00:00Z)
|
|
|> filter(fn: (r) => r.m == "foo")
|
|
|
|
t2 = from(bucket: "example-bucket")
|
|
|> range(start: 2020-01-01T00:00:00Z)
|
|
|> filter(fn: (r) => r.m == "bar")
|
|
|
|
join(tables: {t1: t1, t2: t2}, on: ["_time"])
|
|
```
|
|
input: |
|
|
###### t1
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1 |
|
|
| 2020-01-01T00:02:00Z | 2 |
|
|
| 2020-01-01T00:03:00Z | 1 |
|
|
| 2020-01-01T00:04:00Z | 3 |
|
|
|
|
###### t2
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 5 |
|
|
| 2020-01-01T00:02:00Z | 2 |
|
|
| 2020-01-01T00:03:00Z | 3 |
|
|
| 2020-01-01T00:04:00Z | 4 |
|
|
output: |
|
|
| _time | _value_t1 | _value_t2 |
|
|
|:----- | ---------:| ---------:|
|
|
| 2020-01-01T00:01:00Z | 1 | 5 |
|
|
| 2020-01-01T00:02:00Z | 2 | 2 |
|
|
| 2020-01-01T00:03:00Z | 1 | 3 |
|
|
| 2020-01-01T00:04:00Z | 3 | 4 |
|
|
|
|
map_math:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> map(fn: (r) => ({ r with _value: r._value * r._value }))
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 2 |
|
|
| 2020-01-01T00:02:00Z | 4 |
|
|
| 2020-01-01T00:03:00Z | 3 |
|
|
| 2020-01-01T00:04:00Z | 5 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 4 |
|
|
| 2020-01-01T00:02:00Z | 16 |
|
|
| 2020-01-01T00:03:00Z | 9 |
|
|
| 2020-01-01T00:04:00Z | 25 |
|
|
|
|
median:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> median()
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1.0 |
|
|
| 2020-01-01T00:02:00Z | 1.0 |
|
|
| 2020-01-01T00:03:00Z | 2.0 |
|
|
| 2020-01-01T00:04:00Z | 3.0 |
|
|
output: |
|
|
| _value |
|
|
|:------:|
|
|
| 1.5 |
|
|
|
|
moving_average:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> movingAverage(n: 5)
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1.0 |
|
|
| 2020-01-01T00:02:00Z | 1.2 |
|
|
| 2020-01-01T00:03:00Z | 1.8 |
|
|
| 2020-01-01T00:04:00Z | 0.9 |
|
|
| 2020-01-01T00:05:00Z | 1.4 |
|
|
| 2020-01-01T00:06:00Z | 2.0 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:03:00Z | 1.33 |
|
|
| 2020-01-01T00:04:00Z | 1.30 |
|
|
| 2020-01-01T00:05:00Z | 1.36 |
|
|
| 2020-01-01T00:06:00Z | 1.43 |
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> timedMovingAverage(every: 2m, period: 4m)
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1.0 |
|
|
| 2020-01-01T00:02:00Z | 1.2 |
|
|
| 2020-01-01T00:03:00Z | 1.8 |
|
|
| 2020-01-01T00:04:00Z | 0.9 |
|
|
| 2020-01-01T00:05:00Z | 1.4 |
|
|
| 2020-01-01T00:06:00Z | 2.0 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:02:00Z | 1.000 |
|
|
| 2020-01-01T00:04:00Z | 1.333 |
|
|
| 2020-01-01T00:06:00Z | 1.325 |
|
|
| 2020-01-01T00:06:00Z | 1.150 |
|
|
|
|
percentages:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")
|
|
|> map(fn: (r) => ({
|
|
_time: r._time,
|
|
_field: "used_percent",
|
|
_value: float(v: r.used) / float(v: r.total) * 100.0
|
|
}))
|
|
```
|
|
input: |
|
|
| _time | _field | _value |
|
|
|:----- |:------: | ------:|
|
|
| 2020-01-01T00:00:00Z | used | 2.5 |
|
|
| 2020-01-01T00:00:10Z | used | 3.1 |
|
|
| 2020-01-01T00:00:20Z | used | 4.2 |
|
|
|
|
| _time | _field | _value |
|
|
|:----- |:------: | ------:|
|
|
| 2020-01-01T00:00:00Z | total | 8.0 |
|
|
| 2020-01-01T00:00:10Z | total | 8.0 |
|
|
| 2020-01-01T00:00:20Z | total | 8.0 |
|
|
output: |
|
|
| _time | _field | _value |
|
|
|:----- |:------: | ------:|
|
|
| 2020-01-01T00:00:00Z | used_percent | 31.25 |
|
|
| 2020-01-01T00:00:10Z | used_percent | 38.75 |
|
|
| 2020-01-01T00:00:20Z | used_percent | 52.50 |
|
|
|
|
|
|
quantile:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> quantile(q: 0.99, method: "estimate_tdigest")
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:01:00Z | 1.0 |
|
|
| 2020-01-01T00:02:00Z | 1.0 |
|
|
| 2020-01-01T00:03:00Z | 2.0 |
|
|
| 2020-01-01T00:04:00Z | 3.0 |
|
|
output: |
|
|
| _value |
|
|
|:------:|
|
|
| 3.0 |
|
|
|
|
rate_of_change:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> derivative(unit: 1m, nonNegative: true)
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:00:00Z | 250 |
|
|
| 2020-01-01T00:04:00Z | 160 |
|
|
| 2020-01-01T00:12:00Z | 150 |
|
|
| 2020-01-01T00:19:00Z | 220 |
|
|
| 2020-01-01T00:32:00Z | 200 |
|
|
| 2020-01-01T00:51:00Z | 290 |
|
|
| 2020-01-01T01:00:00Z | 340 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:04:00Z | |
|
|
| 2020-01-01T00:12:00Z | |
|
|
| 2020-01-01T00:19:00Z | 10.0 |
|
|
| 2020-01-01T00:32:00Z | |
|
|
| 2020-01-01T00:51:00Z | 4.74 |
|
|
| 2020-01-01T01:00:00Z | 5.56 |
|
|
-
|
|
code: |
|
|
```js
|
|
import "experimental/aggregate"
|
|
|
|
data
|
|
|> aggregate.rate(every: 20m, unit: 1m)
|
|
```
|
|
input: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:00:00Z | 250 |
|
|
| 2020-01-01T00:04:00Z | 160 |
|
|
| 2020-01-01T00:12:00Z | 150 |
|
|
| 2020-01-01T00:19:00Z | 220 |
|
|
| 2020-01-01T00:32:00Z | 200 |
|
|
| 2020-01-01T00:51:00Z | 290 |
|
|
| 2020-01-01T01:00:00Z | 340 |
|
|
output: |
|
|
| _time | _value |
|
|
|:----- | ------:|
|
|
| 2020-01-01T00:20:00Z | |
|
|
| 2020-01-01T00:40:00Z | 10.0 |
|
|
| 2020-01-01T01:00:00Z | 4.74 |
|
|
| 2020-01-01T01:20:00Z | 5.56 |
|
|
|
|
regular_expressions:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> filter(fn: (r) => r.tag =~ /^foo[1-3]/)
|
|
```
|
|
input: |
|
|
| _time | tag | _value |
|
|
|:----- |:----:| ------:|
|
|
| 2020-01-01T00:01:00Z | foo1 | 1.0 |
|
|
| 2020-01-01T00:02:00Z | foo5 | 1.2 |
|
|
| 2020-01-01T00:03:00Z | bar3 | 1.8 |
|
|
| 2020-01-01T00:04:00Z | foo3 | 0.9 |
|
|
| 2020-01-01T00:05:00Z | foo2 | 1.4 |
|
|
| 2020-01-01T00:06:00Z | bar1 | 2.0 |
|
|
output: |
|
|
| _time | tag | _value |
|
|
|:----- |:----:| ------:|
|
|
| 2020-01-01T00:01:00Z | foo1 | 1.0 |
|
|
| 2020-01-01T00:04:00Z | foo3 | 0.9 |
|
|
| 2020-01-01T00:05:00Z | foo2 | 1.4 |
|
|
|
|
sort_limit:
|
|
-
|
|
code: |
|
|
```js
|
|
data
|
|
|> sort(columns: ["host", "_value"])
|
|
|> limit(n: 4)
|
|
```
|
|
input: |
|
|
| _time | host | _value |
|
|
|:----- |:----:| ------:|
|
|
| 2020-01-01T00:01:00Z | A | 1.0 |
|
|
| 2020-01-01T00:02:00Z | B | 1.2 |
|
|
| 2020-01-01T00:03:00Z | A | 1.8 |
|
|
| 2020-01-01T00:04:00Z | B | 0.9 |
|
|
| 2020-01-01T00:05:00Z | B | 1.4 |
|
|
| 2020-01-01T00:06:00Z | B | 2.0 |
|
|
output: |
|
|
| _time | host | _value |
|
|
|:----- |:----:| ------:|
|
|
| 2020-01-01T00:03:00Z | A | 1.8 |
|
|
| 2020-01-01T00:01:00Z | A | 1.0 |
|
|
| 2020-01-01T00:06:00Z | B | 2.0 |
|
|
| 2020-01-01T00:05:00Z | B | 1.4 |
|