mirror of
https://github.com/grafana/grafana.git
synced 2025-07-30 05:22:49 +08:00
38 lines
864 B
Go
38 lines
864 B
Go
package resources
|
|
|
|
import (
|
|
"net/url"
|
|
)
|
|
|
|
type DimensionValuesRequest struct {
|
|
*ResourceRequest
|
|
Namespace string
|
|
MetricName string
|
|
DimensionKey string
|
|
DimensionFilter []*Dimension
|
|
}
|
|
|
|
func GetDimensionValuesRequest(parameters url.Values) (DimensionValuesRequest, error) {
|
|
resourceRequest, err := getResourceRequest(parameters)
|
|
if err != nil {
|
|
return DimensionValuesRequest{}, err
|
|
}
|
|
|
|
request := DimensionValuesRequest{
|
|
ResourceRequest: resourceRequest,
|
|
Namespace: parameters.Get("namespace"),
|
|
MetricName: parameters.Get("metricName"),
|
|
DimensionKey: parameters.Get("dimensionKey"),
|
|
DimensionFilter: []*Dimension{},
|
|
}
|
|
|
|
dimensions, err := parseDimensionFilter(parameters.Get("dimensionFilters"))
|
|
if err != nil {
|
|
return DimensionValuesRequest{}, err
|
|
}
|
|
|
|
request.DimensionFilter = dimensions
|
|
|
|
return request, nil
|
|
}
|