metrics

package
v1.2.16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 18, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func HandlerFor

func HandlerFor(m Metrics, o Options) http.Handler

HandlerFor returns a collection of metrics handlers.

func NewDefaultHandler

func NewDefaultHandler(o Options) http.Handler

NewDefaultHandler returns a default metrics handler.

Types

type Metrics

type Metrics interface {
	SetRuleGroupsTotal(value float64)
	SetRulesTotal(value float64)
	SetSelectorsTotal(file, group, rule, status string, value float64)
	RegisterHandler(path string, handler *http.ServeMux)
}

Metrics is the generic interface that all the required backends should implement to be a promcheck metrics compatible backend.

type Options

type Options struct {
	// Common prefix for the keys of the different
	// collected metrics.
	Prefix string

	// EnableProfile exposes profiling information on /pprof of the
	// metrics listener.
	EnableProfile bool

	// enables go runtime metrics
	EnableRuntimeMetrics bool

	// A new registry is created if this option is nil.
	PrometheusRegistry *prometheus.Registry
}

Options for initializing metrics collection.

func DefaultOptions

func DefaultOptions() Options

type Prometheus

type Prometheus struct {
	// contains filtered or unexported fields
}

Prometheus implements the prometheus metrics backend.

func NewDefaultPrometheus

func NewDefaultPrometheus() *Prometheus

func NewPrometheus

func NewPrometheus(opts Options) *Prometheus

NewPrometheus returns a new Prometheus metric backend.

func (*Prometheus) CreateHandler

func (p *Prometheus) CreateHandler() http.Handler

func (*Prometheus) RegisterHandler

func (p *Prometheus) RegisterHandler(path string, mux *http.ServeMux)

RegisterHandler satisfies Metrics interface.

func (*Prometheus) SetRuleGroupsTotal

func (p *Prometheus) SetRuleGroupsTotal(value float64)

func (*Prometheus) SetRulesTotal

func (p *Prometheus) SetRulesTotal(value float64)

func (*Prometheus) SetSelectorsTotal

func (p *Prometheus) SetSelectorsTotal(file, group, rule, status string, value float64)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL