metricexport

package
v0.0.0-...-6dae886 Latest Latest
Warning

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

Go to latest
Published: Jul 28, 2023 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package metricexport contains support for exporting metric data.

This is an EXPERIMENTAL package, and may change in arbitrary ways without notice.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Exporter

type Exporter interface {
	ExportMetrics(ctx context.Context, data []*metricdata.Metric) error
}

Exporter is an interface that exporters implement to export the metric data.

type IntervalReader

type IntervalReader struct {
	// ReportingInterval it the time duration between two consecutive
	// metrics reporting. defaultReportingDuration  is used if it is not set.
	// It cannot be set lower than minimumReportingDuration.
	ReportingInterval time.Duration
	// contains filtered or unexported fields
}

IntervalReader periodically reads metrics from all producers registered with producer manager and exports those metrics using provided exporter. Call Reader.Stop() to stop the reader.

func NewIntervalReader

func NewIntervalReader(reader *Reader, exporter Exporter) (*IntervalReader, error)

NewIntervalReader creates a reader. Once started it periodically reads metrics from all producers and exports them using provided exporter.

func (*IntervalReader) Flush

func (ir *IntervalReader) Flush()

Flush flushes the metrics if IntervalReader is stopped, otherwise no-op.

func (*IntervalReader) Start

func (ir *IntervalReader) Start() error

Start starts the IntervalReader which periodically reads metrics from all producers registered with global producer manager. If the reporting interval is not set prior to calling this function then default reporting interval is used.

func (*IntervalReader) Stop

func (ir *IntervalReader) Stop()

Stop stops the reader from reading and exporting metrics. Additional call to Stop are no-ops.

type Reader

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

Reader reads metrics from all producers registered with producer manager and exports those metrics using provided exporter.

func NewReader

func NewReader(o ...ReaderOption) *Reader

NewReader returns a reader configured with specified options.

func (*Reader) ReadAndExport

func (r *Reader) ReadAndExport(exporter Exporter)

ReadAndExport reads metrics from all producer registered with producer manager and then exports them using provided exporter.

type ReaderOption

type ReaderOption func(*ReaderOptions)

ReaderOption apply changes to ReaderOptions.

func WithSpanName

func WithSpanName(spanName string) ReaderOption

WithSpanName makes new reader to use given span name when exporting metrics.

type ReaderOptions

type ReaderOptions struct {
	// SpanName is the name used for span created to export metrics.
	SpanName string
}

ReaderOptions contains options pertaining to metrics reader.

Jump to

Keyboard shortcuts

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