mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2025-01-05 22:32:20 +01:00
lib/metricsql: add example for ExpandWithExprs
This commit is contained in:
parent
e3ae813e6a
commit
0d2e83e9d7
28
lib/metricsql/utils_example_test.go
Normal file
28
lib/metricsql/utils_example_test.go
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
package metricsql_test
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"log"
|
||||||
|
|
||||||
|
"github.com/VictoriaMetrics/VictoriaMetrics/lib/metricsql"
|
||||||
|
)
|
||||||
|
|
||||||
|
func ExampleExpandWithExprs() {
|
||||||
|
// mql can contain arbitrary MetricsQL extensions - see https://github.com/VictoriaMetrics/VictoriaMetrics/wiki/ExtendedPromQL
|
||||||
|
mql := `WITH (
|
||||||
|
commonFilters = {job="$job", instance="$instance"},
|
||||||
|
f(a, b) = 100*(a/b),
|
||||||
|
)
|
||||||
|
f(disk_free_bytes{commonFilters}, disk_total_bytes{commonFilters})`
|
||||||
|
|
||||||
|
// Convert mql to PromQL
|
||||||
|
pql, err := metricsql.ExpandWithExprs(mql)
|
||||||
|
if err != nil {
|
||||||
|
log.Fatalf("cannot expand with expressions: %s", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
fmt.Printf("%s\n", pql)
|
||||||
|
|
||||||
|
// Output:
|
||||||
|
// 100 * (disk_free_bytes{job="$job", instance="$instance"} / disk_total_bytes{job="$job", instance="$instance"})
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user