VictoriaMetrics/lib/metricsql/utils_example_test.go
2019-12-26 21:32:11 +02:00

29 lines
739 B
Go

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"})
}