Documentation
¶
Index ¶
- type PrometheusCounter
- type PrometheusCounterBuilder
- func (b *PrometheusCounterBuilder) Build() srouter_metrics.Counter
- func (b *PrometheusCounterBuilder) Description(desc string) srouter_metrics.CounterBuilder
- func (b *PrometheusCounterBuilder) LabelNames(names ...string) srouter_metrics.CounterBuilder
- func (b *PrometheusCounterBuilder) Name(name string) srouter_metrics.CounterBuilder
- func (b *PrometheusCounterBuilder) Tag(key, value string) srouter_metrics.CounterBuilder
- type PrometheusGauge
- func (g *PrometheusGauge) Add(val float64)
- func (g *PrometheusGauge) Dec()
- func (g *PrometheusGauge) Description() string
- func (g *PrometheusGauge) Inc()
- func (g *PrometheusGauge) Name() string
- func (g *PrometheusGauge) Set(val float64)
- func (g *PrometheusGauge) Sub(val float64)
- func (g *PrometheusGauge) Tags() srouter_metrics.Tags
- func (g *PrometheusGauge) Type() srouter_metrics.MetricType
- func (g *PrometheusGauge) WithTags(tags srouter_metrics.Tags) srouter_metrics.Metric
- type PrometheusGaugeBuilder
- func (b *PrometheusGaugeBuilder) Build() srouter_metrics.Gauge
- func (b *PrometheusGaugeBuilder) Description(desc string) srouter_metrics.GaugeBuilder
- func (b *PrometheusGaugeBuilder) LabelNames(names ...string) srouter_metrics.GaugeBuilder
- func (b *PrometheusGaugeBuilder) Name(name string) srouter_metrics.GaugeBuilder
- func (b *PrometheusGaugeBuilder) Tag(key, value string) srouter_metrics.GaugeBuilder
- type PrometheusHistogram
- func (h *PrometheusHistogram) Description() string
- func (h *PrometheusHistogram) Name() string
- func (h *PrometheusHistogram) Observe(val float64)
- func (h *PrometheusHistogram) Tags() srouter_metrics.Tags
- func (h *PrometheusHistogram) Type() srouter_metrics.MetricType
- func (h *PrometheusHistogram) WithTags(tags srouter_metrics.Tags) srouter_metrics.Metric
- type PrometheusHistogramBuilder
- func (b *PrometheusHistogramBuilder) Buckets(buckets []float64) srouter_metrics.HistogramBuilder
- func (b *PrometheusHistogramBuilder) Build() srouter_metrics.Histogram
- func (b *PrometheusHistogramBuilder) Description(desc string) srouter_metrics.HistogramBuilder
- func (b *PrometheusHistogramBuilder) LabelNames(names ...string) srouter_metrics.HistogramBuilder
- func (b *PrometheusHistogramBuilder) Name(name string) srouter_metrics.HistogramBuilder
- func (b *PrometheusHistogramBuilder) Tag(key, value string) srouter_metrics.HistogramBuilder
- type PrometheusSummary
- func (s *PrometheusSummary) Description() string
- func (s *PrometheusSummary) Name() string
- func (s *PrometheusSummary) Objectives() map[float64]float64
- func (s *PrometheusSummary) Observe(val float64)
- func (s *PrometheusSummary) Tags() srouter_metrics.Tags
- func (s *PrometheusSummary) Type() srouter_metrics.MetricType
- func (s *PrometheusSummary) WithTags(tags srouter_metrics.Tags) srouter_metrics.Metric
- type PrometheusSummaryBuilder
- func (b *PrometheusSummaryBuilder) AgeBuckets(buckets int) srouter_metrics.SummaryBuilder
- func (b *PrometheusSummaryBuilder) BufCap(cap uint32) srouter_metrics.SummaryBuilder
- func (b *PrometheusSummaryBuilder) Build() srouter_metrics.Summary
- func (b *PrometheusSummaryBuilder) Description(desc string) srouter_metrics.SummaryBuilder
- func (b *PrometheusSummaryBuilder) LabelNames(names ...string) srouter_metrics.SummaryBuilder
- func (b *PrometheusSummaryBuilder) MaxAge(age time.Duration) srouter_metrics.SummaryBuilder
- func (b *PrometheusSummaryBuilder) Name(name string) srouter_metrics.SummaryBuilder
- func (b *PrometheusSummaryBuilder) Objectives(objectives map[float64]float64) srouter_metrics.SummaryBuilder
- func (b *PrometheusSummaryBuilder) Tag(key, value string) srouter_metrics.SummaryBuilder
- type SRouterPrometheusRegistry
- func (s *SRouterPrometheusRegistry) Clear()
- func (s *SRouterPrometheusRegistry) Get(name string) (srouter_metrics.Metric, bool)
- func (s *SRouterPrometheusRegistry) NewCounter() srouter_metrics.CounterBuilder
- func (s *SRouterPrometheusRegistry) NewGauge() srouter_metrics.GaugeBuilder
- func (s *SRouterPrometheusRegistry) NewHistogram() srouter_metrics.HistogramBuilder
- func (s *SRouterPrometheusRegistry) NewSummary() srouter_metrics.SummaryBuilder
- func (s *SRouterPrometheusRegistry) Register(m srouter_metrics.Metric) error
- func (s *SRouterPrometheusRegistry) Unregister(name string) bool
- func (s *SRouterPrometheusRegistry) WithTags(tags srouter_metrics.Tags) srouter_metrics.MetricsRegistry
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PrometheusCounter ¶
type PrometheusCounter struct {
// contains filtered or unexported fields
}
PrometheusCounter adapts prometheus.Counter/CounterVec to srouter_metrics.Counter.
func (*PrometheusCounter) Add ¶
func (c *PrometheusCounter) Add(val float64)
Add increments the counter by a given value. Label values are ignored as the SRouter interface expects Add(float64).
func (*PrometheusCounter) Description ¶
func (c *PrometheusCounter) Description() string
func (*PrometheusCounter) Inc ¶
func (c *PrometheusCounter) Inc()
Inc increments the counter. Label values are ignored as the SRouter interface expects Inc().
func (*PrometheusCounter) Name ¶
func (c *PrometheusCounter) Name() string
func (*PrometheusCounter) Tags ¶
func (c *PrometheusCounter) Tags() srouter_metrics.Tags
func (*PrometheusCounter) Type ¶
func (c *PrometheusCounter) Type() srouter_metrics.MetricType
type PrometheusCounterBuilder ¶
type PrometheusCounterBuilder struct {
// contains filtered or unexported fields
}
PrometheusCounterBuilder adapts Prometheus counter creation.
func (*PrometheusCounterBuilder) Build ¶
func (b *PrometheusCounterBuilder) Build() srouter_metrics.Counter
Build creates and registers the Prometheus counter.
func (*PrometheusCounterBuilder) Description ¶
func (b *PrometheusCounterBuilder) Description(desc string) srouter_metrics.CounterBuilder
func (*PrometheusCounterBuilder) LabelNames ¶
func (b *PrometheusCounterBuilder) LabelNames(names ...string) srouter_metrics.CounterBuilder
func (*PrometheusCounterBuilder) Name ¶
func (b *PrometheusCounterBuilder) Name(name string) srouter_metrics.CounterBuilder
func (*PrometheusCounterBuilder) Tag ¶
func (b *PrometheusCounterBuilder) Tag(key, value string) srouter_metrics.CounterBuilder
type PrometheusGauge ¶
type PrometheusGauge struct {
// contains filtered or unexported fields
}
PrometheusGauge adapts prometheus.Gauge/GaugeVec to srouter_metrics.Gauge.
func (*PrometheusGauge) Add ¶
func (g *PrometheusGauge) Add(val float64)
Add adds the given value to the gauge. Label values are ignored as the SRouter interface expects Add(float64).
func (*PrometheusGauge) Dec ¶
func (g *PrometheusGauge) Dec()
Dec decrements the gauge. Label values are ignored as the SRouter interface expects Dec().
func (*PrometheusGauge) Description ¶
func (g *PrometheusGauge) Description() string
func (*PrometheusGauge) Inc ¶
func (g *PrometheusGauge) Inc()
Inc increments the gauge. Label values are ignored as the SRouter interface expects Inc().
func (*PrometheusGauge) Name ¶
func (g *PrometheusGauge) Name() string
func (*PrometheusGauge) Set ¶
func (g *PrometheusGauge) Set(val float64)
Set sets the gauge value. Label values are ignored as the SRouter interface expects Set(float64).
func (*PrometheusGauge) Sub ¶
func (g *PrometheusGauge) Sub(val float64)
Sub subtracts the given value from the gauge. Label values are ignored as the SRouter interface expects Sub(float64).
func (*PrometheusGauge) Tags ¶
func (g *PrometheusGauge) Tags() srouter_metrics.Tags
func (*PrometheusGauge) Type ¶
func (g *PrometheusGauge) Type() srouter_metrics.MetricType
func (*PrometheusGauge) WithTags ¶
func (g *PrometheusGauge) WithTags(tags srouter_metrics.Tags) srouter_metrics.Metric
type PrometheusGaugeBuilder ¶
type PrometheusGaugeBuilder struct {
// contains filtered or unexported fields
}
PrometheusGaugeBuilder adapts Prometheus gauge creation.
func (*PrometheusGaugeBuilder) Build ¶
func (b *PrometheusGaugeBuilder) Build() srouter_metrics.Gauge
Build creates and registers the Prometheus gauge.
func (*PrometheusGaugeBuilder) Description ¶
func (b *PrometheusGaugeBuilder) Description(desc string) srouter_metrics.GaugeBuilder
func (*PrometheusGaugeBuilder) LabelNames ¶
func (b *PrometheusGaugeBuilder) LabelNames(names ...string) srouter_metrics.GaugeBuilder
func (*PrometheusGaugeBuilder) Name ¶
func (b *PrometheusGaugeBuilder) Name(name string) srouter_metrics.GaugeBuilder
func (*PrometheusGaugeBuilder) Tag ¶
func (b *PrometheusGaugeBuilder) Tag(key, value string) srouter_metrics.GaugeBuilder
type PrometheusHistogram ¶
type PrometheusHistogram struct {
// contains filtered or unexported fields
}
PrometheusHistogram adapts prometheus.Histogram/HistogramVec to srouter_metrics.Histogram.
func (*PrometheusHistogram) Description ¶
func (h *PrometheusHistogram) Description() string
func (*PrometheusHistogram) Name ¶
func (h *PrometheusHistogram) Name() string
func (*PrometheusHistogram) Observe ¶
func (h *PrometheusHistogram) Observe(val float64)
Observe adds a single observation to the histogram. Label values are ignored as the SRouter interface expects Observe(float64).
func (*PrometheusHistogram) Tags ¶
func (h *PrometheusHistogram) Tags() srouter_metrics.Tags
func (*PrometheusHistogram) Type ¶
func (h *PrometheusHistogram) Type() srouter_metrics.MetricType
func (*PrometheusHistogram) WithTags ¶
func (h *PrometheusHistogram) WithTags(tags srouter_metrics.Tags) srouter_metrics.Metric
type PrometheusHistogramBuilder ¶
type PrometheusHistogramBuilder struct {
// contains filtered or unexported fields
}
PrometheusHistogramBuilder adapts Prometheus histogram creation.
func (*PrometheusHistogramBuilder) Buckets ¶
func (b *PrometheusHistogramBuilder) Buckets(buckets []float64) srouter_metrics.HistogramBuilder
Buckets sets the histogram buckets, accepting a slice per the interface.
func (*PrometheusHistogramBuilder) Build ¶
func (b *PrometheusHistogramBuilder) Build() srouter_metrics.Histogram
Build creates and registers the Prometheus histogram.
func (*PrometheusHistogramBuilder) Description ¶
func (b *PrometheusHistogramBuilder) Description(desc string) srouter_metrics.HistogramBuilder
func (*PrometheusHistogramBuilder) LabelNames ¶
func (b *PrometheusHistogramBuilder) LabelNames(names ...string) srouter_metrics.HistogramBuilder
func (*PrometheusHistogramBuilder) Name ¶
func (b *PrometheusHistogramBuilder) Name(name string) srouter_metrics.HistogramBuilder
func (*PrometheusHistogramBuilder) Tag ¶
func (b *PrometheusHistogramBuilder) Tag(key, value string) srouter_metrics.HistogramBuilder
type PrometheusSummary ¶
type PrometheusSummary struct {
// contains filtered or unexported fields
}
PrometheusSummary adapts prometheus.Summary/SummaryVec to srouter_metrics.Summary.
func (*PrometheusSummary) Description ¶
func (s *PrometheusSummary) Description() string
func (*PrometheusSummary) Name ¶
func (s *PrometheusSummary) Name() string
func (*PrometheusSummary) Objectives ¶
func (s *PrometheusSummary) Objectives() map[float64]float64
func (*PrometheusSummary) Observe ¶
func (s *PrometheusSummary) Observe(val float64)
Observe adds a single observation to the summary. Label values are ignored as the SRouter interface expects Observe(float64).
func (*PrometheusSummary) Tags ¶
func (s *PrometheusSummary) Tags() srouter_metrics.Tags
func (*PrometheusSummary) Type ¶
func (s *PrometheusSummary) Type() srouter_metrics.MetricType
func (*PrometheusSummary) WithTags ¶
func (s *PrometheusSummary) WithTags(tags srouter_metrics.Tags) srouter_metrics.Metric
type PrometheusSummaryBuilder ¶
type PrometheusSummaryBuilder struct {
// contains filtered or unexported fields
}
PrometheusSummaryBuilder adapts Prometheus summary creation.
func (*PrometheusSummaryBuilder) AgeBuckets ¶
func (b *PrometheusSummaryBuilder) AgeBuckets(buckets int) srouter_metrics.SummaryBuilder
AgeBuckets sets the number of buckets used to calculate quantiles over time. Accepts int per the interface.
func (*PrometheusSummaryBuilder) BufCap ¶
func (b *PrometheusSummaryBuilder) BufCap(cap uint32) srouter_metrics.SummaryBuilder
func (*PrometheusSummaryBuilder) Build ¶
func (b *PrometheusSummaryBuilder) Build() srouter_metrics.Summary
Build creates and registers the Prometheus summary.
func (*PrometheusSummaryBuilder) Description ¶
func (b *PrometheusSummaryBuilder) Description(desc string) srouter_metrics.SummaryBuilder
func (*PrometheusSummaryBuilder) LabelNames ¶
func (b *PrometheusSummaryBuilder) LabelNames(names ...string) srouter_metrics.SummaryBuilder
func (*PrometheusSummaryBuilder) MaxAge ¶
func (b *PrometheusSummaryBuilder) MaxAge(age time.Duration) srouter_metrics.SummaryBuilder
func (*PrometheusSummaryBuilder) Name ¶
func (b *PrometheusSummaryBuilder) Name(name string) srouter_metrics.SummaryBuilder
func (*PrometheusSummaryBuilder) Objectives ¶
func (b *PrometheusSummaryBuilder) Objectives(objectives map[float64]float64) srouter_metrics.SummaryBuilder
func (*PrometheusSummaryBuilder) Tag ¶
func (b *PrometheusSummaryBuilder) Tag(key, value string) srouter_metrics.SummaryBuilder
type SRouterPrometheusRegistry ¶
type SRouterPrometheusRegistry struct {
// contains filtered or unexported fields
}
SRouterPrometheusRegistry adapts a Prometheus Registerer/Gatherer to SRouter's MetricsRegistry interface.
func NewSRouterPrometheusRegistry ¶
func NewSRouterPrometheusRegistry(registry prometheus.Registerer, namespace, subsystem string) *SRouterPrometheusRegistry
NewSRouterPrometheusRegistry creates a new adapter using a prometheus.Registerer.
func (*SRouterPrometheusRegistry) Clear ¶
func (s *SRouterPrometheusRegistry) Clear()
Clear attempts to unregister all metrics. Prometheus registry doesn't have a ClearAll. We can iterate and unregister, but it's not atomic.
func (*SRouterPrometheusRegistry) Get ¶
func (s *SRouterPrometheusRegistry) Get(name string) (srouter_metrics.Metric, bool)
Get attempts to retrieve a metric by name. Prometheus client doesn't directly support this easily, especially differentiating between metrics with the same name but different labels/tags or types. This implementation returns nil, false. The application should retain references to the metrics it builds.
func (*SRouterPrometheusRegistry) NewCounter ¶
func (s *SRouterPrometheusRegistry) NewCounter() srouter_metrics.CounterBuilder
func (*SRouterPrometheusRegistry) NewGauge ¶
func (s *SRouterPrometheusRegistry) NewGauge() srouter_metrics.GaugeBuilder
func (*SRouterPrometheusRegistry) NewHistogram ¶
func (s *SRouterPrometheusRegistry) NewHistogram() srouter_metrics.HistogramBuilder
func (*SRouterPrometheusRegistry) NewSummary ¶
func (s *SRouterPrometheusRegistry) NewSummary() srouter_metrics.SummaryBuilder
func (*SRouterPrometheusRegistry) Register ¶
func (s *SRouterPrometheusRegistry) Register(m srouter_metrics.Metric) error
Register is handled implicitly by the Build methods using registry.Register
func (*SRouterPrometheusRegistry) Unregister ¶
func (s *SRouterPrometheusRegistry) Unregister(name string) bool
Unregister attempts to unregister a metric by name. NOTE: Prometheus client library makes unregistering by name difficult and potentially unsafe if multiple metrics share the same name (e.g., different labels). This implementation currently cannot reliably unregister by name only. It's effectively a no-op.
func (*SRouterPrometheusRegistry) WithTags ¶
func (s *SRouterPrometheusRegistry) WithTags(tags srouter_metrics.Tags) srouter_metrics.MetricsRegistry
WithTags creates a new registry instance scoped with additional tags (const labels).