Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DefaultResultValidator ¶
type DefaultResultValidator struct { }
DefaultResultValidator is the validator used by many measurement types
func (*DefaultResultValidator) IsValid ¶
func (m *DefaultResultValidator) IsValid(res *measurement.Result, probe *probe.Probe) bool
IsValid returns whether an result is valid or not (e.g. IPv6 measurement and Probe does not support IPv6)
type Exporter ¶
type Exporter interface { // Export exports a prometheus metric Export(res *measurement.Result, probe *probe.Probe, ch chan<- prometheus.Metric) // Describes metrics exported for this measurement type Describe(ch chan<- *prometheus.Desc) }
Exporter defines a set of metrics for an ATLAS measurement type
type Histogram ¶
type Histogram interface { ProcessResult(*measurement.Result) Hist() prometheus.Histogram }
Histogram is the state of a single histogram of a measurement
type Measurement ¶
type Measurement struct {
// contains filtered or unexported fields
}
Measurement handles measurement results and converts to metrics
func NewMeasurement ¶
func NewMeasurement(exporter Exporter, opts ...MeasurementOpt) *Measurement
NewMeasurement returns a new instance of `Measurement`
func (*Measurement) Add ¶
func (r *Measurement) Add(m *measurement.Result, probe *probe.Probe)
Add adds an result to a measurement
func (*Measurement) Collect ¶
func (r *Measurement) Collect(ch chan<- prometheus.Metric)
Collect collects metrics for the `Measurement`
func (*Measurement) Describe ¶
func (r *Measurement) Describe(ch chan<- *prometheus.Desc)
Describe describes all metrics for the `Measurement`
type MeasurementOpt ¶
type MeasurementOpt func(r *Measurement)
MeasurementOpt are options to apply to the `Measurement`
func WithHistograms ¶
func WithHistograms(h ...Histogram) MeasurementOpt
WithHistograms adds histograms to the measurement
func WithValidator ¶
func WithValidator(v ResultValidator) MeasurementOpt
WithValidator sets an validator to validate results for a measurement
type ResultValidator ¶
type ResultValidator interface { // IsValid returns if a meaurement result is valid (can be filtered when needed) IsValid(res *measurement.Result, probe *probe.Probe) bool }
ResultValidator validates results for measurements