generic

package
v0.14.0-openmesh Latest Latest
Warning

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

Go to latest
Published: Nov 11, 2023 License: MIT Imports: 8 Imported by: 0

Documentation

Overview

Package generic implements generic versions of each of the metric types. They can be embedded by other implementations, and converted to specific formats as necessary.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Bucket

type Bucket struct {
	From, To, Count int64
}

Bucket is a range in a histogram which aggregates observations.

type Counter

type Counter struct {
	Name string
	// contains filtered or unexported fields
}

Counter is an in-memory implementation of a Counter.

func NewCounter

func NewCounter(name string) *Counter

NewCounter returns a new, usable Counter.

func (*Counter) Add

func (c *Counter) Add(delta float64)

Add implements Counter.

func (*Counter) LabelValues

func (c *Counter) LabelValues() []string

LabelValues returns the set of label values attached to the counter.

func (*Counter) Value

func (c *Counter) Value() float64

Value returns the current value of the counter.

func (*Counter) ValueReset

func (c *Counter) ValueReset() float64

ValueReset returns the current value of the counter, and resets it to zero. This is useful for metrics backends whose counter aggregations expect deltas, like Graphite.

func (*Counter) With

func (c *Counter) With(labelValues ...string) metrics.Counter

With implements Counter.

type Gauge

type Gauge struct {
	Name string
	// contains filtered or unexported fields
}

Gauge is an in-memory implementation of a Gauge.

func NewGauge

func NewGauge(name string) *Gauge

NewGauge returns a new, usable Gauge.

func (*Gauge) Add

func (g *Gauge) Add(delta float64)

Add implements metrics.Gauge.

func (*Gauge) LabelValues

func (g *Gauge) LabelValues() []string

LabelValues returns the set of label values attached to the gauge.

func (*Gauge) Set

func (g *Gauge) Set(value float64)

Set implements Gauge.

func (*Gauge) Value

func (g *Gauge) Value() float64

Value returns the current value of the gauge.

func (*Gauge) With

func (g *Gauge) With(labelValues ...string) metrics.Gauge

With implements Gauge.

type Histogram

type Histogram struct {
	Name string
	// contains filtered or unexported fields
}

Histogram is an in-memory implementation of a streaming histogram, based on VividCortex/gohistogram. It dynamically computes quantiles, so it's not suitable for aggregation.

func NewHistogram

func NewHistogram(name string, buckets int) *Histogram

NewHistogram returns a numeric histogram based on VividCortex/gohistogram. A good default value for buckets is 50.

func (*Histogram) LabelValues

func (h *Histogram) LabelValues() []string

LabelValues returns the set of label values attached to the histogram.

func (*Histogram) Observe

func (h *Histogram) Observe(value float64)

Observe implements Histogram.

func (*Histogram) Print

func (h *Histogram) Print(w io.Writer)

Print writes a string representation of the histogram to the passed writer. Useful for printing to a terminal.

func (*Histogram) Quantile

func (h *Histogram) Quantile(q float64) float64

Quantile returns the value of the quantile q, 0.0 < q < 1.0.

func (*Histogram) With

func (h *Histogram) With(labelValues ...string) metrics.Histogram

With implements Histogram.

type Quantile

type Quantile struct {
	Quantile int // 0..100
	Value    int64
}

Quantile is a pair of a quantile (0..100) and its observed maximum value.

type SimpleHistogram

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

SimpleHistogram is an in-memory implementation of a Histogram. It only tracks an approximate moving average, so is likely too naïve for many use cases.

func NewSimpleHistogram

func NewSimpleHistogram() *SimpleHistogram

NewSimpleHistogram returns a SimpleHistogram, ready for observations.

func (*SimpleHistogram) ApproximateMovingAverage

func (h *SimpleHistogram) ApproximateMovingAverage() float64

ApproximateMovingAverage returns the approximate moving average of observations.

func (*SimpleHistogram) LabelValues

func (h *SimpleHistogram) LabelValues() []string

LabelValues returns the set of label values attached to the histogram.

func (*SimpleHistogram) Observe

func (h *SimpleHistogram) Observe(value float64)

Observe implements Histogram.

func (*SimpleHistogram) With

func (h *SimpleHistogram) With(labelValues ...string) metrics.Histogram

With implements Histogram.

Jump to

Keyboard shortcuts

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