github.com/operator-framework/operator-lifecycle-manager@v0.30.0/pkg/metrics/experimental_declarations.go (about)

     1  package metrics
     2  
     3  import "github.com/prometheus/client_golang/prometheus"
     4  
     5  const (
     6  	// Controller names
     7  	operatorController                   = "operator"
     8  	adoptionCSVController                = "adoption_csv"
     9  	adoptionSubscriptionController       = "adoption_subscription"
    10  	operatorConditionController          = "operator_condition"
    11  	operatorConditionGeneratorController = "operator_condition_generator"
    12  )
    13  
    14  var (
    15  	reconcileMetrics = map[string]*prometheus.CounterVec{}
    16  )
    17  
    18  func EmitOperatorReconcile(namespace, name string) {
    19  	emitReconcile(operatorController, namespace, name)
    20  }
    21  
    22  func EmitAdoptionCSVReconcile(namespace, name string) {
    23  	emitReconcile(adoptionCSVController, namespace, name)
    24  }
    25  
    26  func EmitAdoptionSubscriptionReconcile(namespace, name string) {
    27  	emitReconcile(adoptionSubscriptionController, namespace, name)
    28  }
    29  
    30  func EmitOperatorConditionReconcile(namespace, name string) {
    31  	emitReconcile(operatorConditionController, namespace, name)
    32  }
    33  
    34  func EmitOperatorConditionGeneratorReconcile(namespace, name string) {
    35  	emitReconcile(operatorConditionGeneratorController, namespace, name)
    36  }
    37  
    38  func emitReconcile(controllerName, namespace, name string) {
    39  	if counter, ok := reconcileMetrics[controllerName]; ok {
    40  		counter.WithLabelValues(namespace, name).Inc()
    41  	}
    42  }