Merge pull request #179 from xjas/namespaced-fix

Fix namespaced bug of node resource for issue #178
This commit is contained in:
Sergiusz Urbaniak 2019-03-28 13:05:25 +01:00 committed by GitHub
commit 5de0247b4a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 10 additions and 4 deletions

View file

@ -13,8 +13,12 @@ import (
"github.com/directxman12/k8s-prometheus-adapter/pkg/naming"
)
var nsGroupResource = schema.GroupResource{Resource: "namespaces"}
var groupNameSanitizer = strings.NewReplacer(".", "_", "-", "_")
var (
nsGroupResource = schema.GroupResource{Resource: "namespaces"}
nodeGroupResource = schema.GroupResource{Resource: "nodes"}
pvGroupResource = schema.GroupResource{Resource: "persistentvolumes"}
groupNameSanitizer = strings.NewReplacer(".", "_", "-", "_")
)
// MetricNamer knows how to convert Prometheus series names and label names to
// metrics API resources, and vice-versa. MetricNamers should be safe to access

View file

@ -99,7 +99,7 @@ func (r *basicSeriesRegistry) SetSeries(newSeriesSlices [][]prom.Series, namers
}
// namespace metrics aren't counted as namespaced
if resource == nsGroupResource {
if resource == nsGroupResource || resource == nodeGroupResource || resource == pvGroupResource {
info.Namespaced = false
}

View file

@ -20,6 +20,8 @@ import (
var (
groupNameSanitizer = strings.NewReplacer(".", "_", "-", "_")
nsGroupResource = schema.GroupResource{Resource: "namespaces"}
nodeGroupResource = schema.GroupResource{Resource: "nodes"}
pvGroupResource = schema.GroupResource{Resource: "persistentvolumes"}
)
// ResourceConverter knows the relationship between Kubernetes group-resources and Prometheus labels,
@ -177,7 +179,7 @@ func (r *resourceConverter) ResourcesForSeries(series prom.Series) ([]schema.Gro
}
}
if groupRes == nsGroupResource {
if groupRes != nsGroupResource && groupRes != nodeGroupResource && groupRes != pvGroupResource {
namespaced = true
}
}