Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AggregatorSelector ¶
func AggregatorSelector() export.AggregatorSelector
AggregatorSelector returns a policy that is consistent with the test descriptors above. I.e., it returns sum.New() for counter instruments and lastvalue.New() for lastValue instruments.
func Checkpointer ¶
func Checkpointer(p *Processor) export.Checkpointer
Checkpointer returns a checkpointer that computes a single interval.
Types ¶
type Exporter ¶
type Exporter struct { export.ExportKindSelector // InjectErr supports returning conditional errors from // the Export() routine. This must be set before the // Exporter is first used. InjectErr func(export.Record) error // contains filtered or unexported fields }
Exporter is a testing implementation of export.Exporter that assembles its results as a map[string]float64.
func NewExporter ¶
func NewExporter(selector export.ExportKindSelector, encoder label.Encoder) *Exporter
NewExporter returns a new testing Exporter implementation. Verify exporter outputs using Values(), e.g.,:
require.EqualValues(t, map[string]float64{ "counter.sum/A=1,B=2/R=V": 100, }, exporter.Values())
Where in the example A=1,B=2 is the encoded labels and R=V is the encoded resource value.
func (*Exporter) ExportCount ¶
ExportCount returns the number of times Export() has been called since the last Reset().
func (*Exporter) Reset ¶
func (e *Exporter) Reset()
Reset sets the exporter's output to the initial, empty state and resets the export count to zero.
type Output ¶
Output implements export.CheckpointSet.
func NewOutput ¶
NewOutput is a helper for testing an expected set of Accumulations (from an Accumulator) or an expected set of Records (from a Processor). If testing with an Accumulator, it may be simpler to use the test Processor in this package.
func (*Output) AddAccumulation ¶
func (o *Output) AddAccumulation(acc export.Accumulation) error
AddAccumulation adds a string representation of the exported metric data to a map for use in testing. The value taken from the accumulation is either the Sum() or the LastValue() of its Aggregator().Aggregation(), whichever is defined.
func (*Output) AddRecord ¶
AddRecord adds a string representation of the exported metric data to a map for use in testing. The value taken from the record is either the Sum() or the LastValue() of its Aggregation(), whichever is defined. Record timestamps are ignored.
type Processor ¶
type Processor struct { export.AggregatorSelector // contains filtered or unexported fields }
Processor is a testing implementation of export.Processor that assembles its results as a map[string]float64.
func NewProcessor ¶
func NewProcessor(selector export.AggregatorSelector, encoder label.Encoder) *Processor
NewProcessor returns a new testing Processor implementation. Verify expected outputs using Values(), e.g.:
require.EqualValues(t, map[string]float64{ "counter.sum/A=1,B=2/R=V": 100, }, processor.Values())
Where in the example A=1,B=2 is the encoded labels and R=V is the encoded resource value.
func (*Processor) Process ¶
func (p *Processor) Process(accum export.Accumulation) error
Process implements export.Processor.