mirror of https://github.com/grafana/grafana.git
				
				
				
			
		
			
				
	
	
		
			57 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
| package idimpl
 | |
| 
 | |
| import (
 | |
| 	"github.com/prometheus/client_golang/prometheus"
 | |
| )
 | |
| 
 | |
| const (
 | |
| 	metricsNamespace = "grafana"
 | |
| 	metricsSubSystem = "idforwarding"
 | |
| )
 | |
| 
 | |
| func newMetrics(reg prometheus.Registerer) *metrics {
 | |
| 	m := &metrics{
 | |
| 		tokenSigningCounter: prometheus.NewCounter(prometheus.CounterOpts{
 | |
| 			Namespace: metricsNamespace,
 | |
| 			Subsystem: metricsSubSystem,
 | |
| 			Name:      "idforwarding_token_signing_total",
 | |
| 			Help:      "Number of token signings",
 | |
| 		}),
 | |
| 		tokenSigningFromCacheCounter: prometheus.NewCounter(prometheus.CounterOpts{
 | |
| 			Namespace: metricsNamespace,
 | |
| 			Subsystem: metricsSubSystem,
 | |
| 			Name:      "idforwarding_token_signing_from_cache_total",
 | |
| 			Help:      "Number of signed tokens retrieved from cache",
 | |
| 		}),
 | |
| 		failedTokenSigningCounter: prometheus.NewCounter(prometheus.CounterOpts{
 | |
| 			Namespace: metricsNamespace,
 | |
| 			Subsystem: metricsSubSystem,
 | |
| 			Name:      "idforwarding_failed_token_signing_total",
 | |
| 			Help:      "Number of failed token signings",
 | |
| 		}),
 | |
| 		tokenSigningDurationHistogram: prometheus.NewHistogram(prometheus.HistogramOpts{
 | |
| 			Namespace: metricsNamespace,
 | |
| 			Subsystem: metricsSubSystem,
 | |
| 			Name:      "idforwarding_token_signing_duration_seconds",
 | |
| 			Help:      "Histogram of token signing duration",
 | |
| 			Buckets:   []float64{0.1, 0.25, 0.5, 1, 2, 5, 10},
 | |
| 		}),
 | |
| 	}
 | |
| 
 | |
| 	if reg != nil {
 | |
| 		reg.MustRegister(m.tokenSigningCounter)
 | |
| 		reg.MustRegister(m.tokenSigningFromCacheCounter)
 | |
| 		reg.MustRegister(m.failedTokenSigningCounter)
 | |
| 		reg.MustRegister(m.tokenSigningDurationHistogram)
 | |
| 	}
 | |
| 
 | |
| 	return m
 | |
| }
 | |
| 
 | |
| type metrics struct {
 | |
| 	tokenSigningCounter           prometheus.Counter
 | |
| 	tokenSigningFromCacheCounter  prometheus.Counter
 | |
| 	failedTokenSigningCounter     prometheus.Counter
 | |
| 	tokenSigningDurationHistogram prometheus.Histogram
 | |
| }
 |