Fix pending_pods, schedule_attempts_total was not recorded

because metric initializations are too early. This causes actual metric
instance become no-op.

modification made in thie commit to make sure actual metric instance won't be no-op metrics:

- re-initialize scheduler/metrics.PodSchedule{Successes, Failure, Errors} after metric creation
- scheduler/metrics.Register() should be called before initializing SchedulingQueue,
This commit is contained in:
Shingo Omura
2020-01-30 20:02:54 +09:00
parent 7164152844
commit c9c4be66d3
2 changed files with 8 additions and 1 deletions

View File

@@ -291,6 +291,8 @@ func New(client clientset.Interface,
nodeInfoSnapshot: snapshot,
}
metrics.Register()
var sched *Scheduler
source := options.schedulerAlgorithmSource
switch {
@@ -322,7 +324,6 @@ func New(client clientset.Interface,
default:
return nil, fmt.Errorf("unsupported algorithm source: %v", source)
}
metrics.Register()
// Additional tweaks to the config produced by the configurator.
sched.Recorder = recorder
sched.DisablePreemption = options.disablePreemption