mirror of
https://github.com/kubernetes-sigs/prometheus-adapter.git
synced 2026-04-07 22:25:03 +00:00
Fixing some refactoring bugs, first half-decent external metrics attempt.
Fixed: * `basicMetricLister` wasn't applying the appropriate start time because I had forgotten to set the `lookback`. There are still a number of issues: * The `externalPrometheusProvider` is not hooked up to the web application yet, so it doesn't serve requests. * The namespace and label approach used in `external_info_map.go` is horrifically incorrect. It doesn't appropriately store multiple series with the same name but different labels. * The configuration is still not updated to appropriately handle external metrics, it's sort of half-piggy-backing on the pre-existing work.
This commit is contained in:
parent
056cb7f7f2
commit
9641e70005
14 changed files with 637 additions and 77 deletions
|
|
@ -36,6 +36,7 @@ type MetricNamer interface {
|
|||
QueryForSeries(series string, resource schema.GroupResource, namespace string, names ...string) (prom.Selector, error)
|
||||
QueryForExternalSeries(series string, metricSelector labels.Selector) (prom.Selector, error)
|
||||
IdentifySeries(series prom.Series) (seriesIdentity, error)
|
||||
MetricType() config.MetricType
|
||||
}
|
||||
|
||||
type seriesIdentity struct {
|
||||
|
|
@ -69,6 +70,10 @@ type queryTemplateArgs struct {
|
|||
GroupBySlice []string
|
||||
}
|
||||
|
||||
func (n *metricNamer) MetricType() config.MetricType {
|
||||
return n.metricType
|
||||
}
|
||||
|
||||
func (n *metricNamer) IdentifySeries(series prom.Series) (seriesIdentity, error) {
|
||||
// TODO: warn if it doesn't match any resources
|
||||
resources, namespaced := n.resourceConverter.ResourcesForSeries(series)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue