Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateLuxMetrics ¶
func CreateLuxMetrics(namespace string) luxmetrics.Metrics
CreateLuxMetrics creates a Lux metrics instance with a prometheus backend
func GetPrometheusRegistry ¶
func GetPrometheusRegistry(metrics luxmetrics.Metrics) (*prometheus.Registry, bool)
GetPrometheusRegistry extracts the prometheus registry from Lux metrics
func MakeAndRegister ¶
func MakeAndRegister(gatherer MultiGatherer, name string) (*prometheus.Registry, error)
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client for requesting metrics from a remote Lux instance
func (*Client) GetMetrics ¶
GetMetrics returns the metrics from the connected node. The metrics are returned as a map of metric family name to the metric family.
type LuxMultiGatherer ¶
type LuxMultiGatherer struct {
// contains filtered or unexported fields
}
LuxMultiGatherer adapts Lux metrics MultiGatherer to prometheus MultiGatherer
func (*LuxMultiGatherer) Deregister ¶
func (l *LuxMultiGatherer) Deregister(name string) bool
Deregister implements MultiGatherer
func (*LuxMultiGatherer) Gather ¶
func (l *LuxMultiGatherer) Gather() ([]*dto.MetricFamily, error)
Gather implements prometheus.Gatherer
func (*LuxMultiGatherer) Register ¶
func (l *LuxMultiGatherer) Register(name string, gatherer prometheus.Gatherer) error
Register implements MultiGatherer
type MultiGatherer ¶
type MultiGatherer interface {
prometheus.Gatherer
// Register adds the outputs of [gatherer] to the results of future calls to
// Gather with the provided [name] added to the metrics.
Register(name string, gatherer prometheus.Gatherer) error
// Deregister removes the outputs of a gatherer with [name] from the results
// of future calls to Gather. Returns true if a gatherer with [name] was
// found.
Deregister(name string) bool
}
MultiGatherer extends the Gatherer interface by allowing additional gatherers to be registered.
func NewLabelGatherer ¶
func NewLabelGatherer(labelName string) MultiGatherer
NewLabelGatherer returns a new MultiGatherer that merges metrics by adding a new label.
func NewLuxMetricsMultiGatherer ¶
func NewLuxMetricsMultiGatherer() MultiGatherer
NewLuxMetricsMultiGatherer creates a MultiGatherer using Lux metrics
func NewLuxMultiGatherer ¶
func NewLuxMultiGatherer(gatherer luxmetrics.MultiGatherer) MultiGatherer
NewLuxMultiGatherer creates a new adapter
func NewPrefixGatherer ¶
func NewPrefixGatherer() MultiGatherer
NewPrefixGatherer returns a new MultiGatherer that merges metrics by adding a prefix to their names.