package dogstatsd

import "go.opentelemetry.io/otel/exporter/metric/dogstatsd"

Index

Functions

func InstallNewPipeline

func InstallNewPipeline(config Config) (*push.Controller, error)

InstallNewPipeline instantiates a NewExportPipeline and registers it globally. Typically called as:

pipeline, err := dogstatsd.InstallNewPipeline(dogstatsd.Config{...})
if err != nil {
	...
}
defer pipeline.Stop()
... Done

func NewExportPipeline

func NewExportPipeline(config Config) (*push.Controller, error)

NewExportPipeline sets up a complete export pipeline with the recommended setup, chaining a NewRawExporter into the recommended selectors and batchers.

Types

type Config

type Config = statsd.Config

type Exporter

type Exporter struct {
	*statsd.Exporter
	*statsd.LabelEncoder

	ReencodedLabelsCount int
}

Exporter implements a dogstatsd-format statsd exporter, which encodes label sets as independent fields in the output.

TODO: find a link for this syntax. It's been copied out of code, not a specification:

https://github.com/stripe/veneur/blob/master/sinks/datadog/datadog.go

func NewRawExporter

func NewRawExporter(config Config) (*Exporter, error)

NewRawExporter returns a new Dogstatsd-syntax exporter for use in a pipeline. This type implements the metric.LabelEncoder interface, allowing the SDK's unique label encoding to be pre-computed for the exporter and stored in the LabelSet.

func (*Exporter) AppendName

func (*Exporter) AppendName(rec export.Record, buf *bytes.Buffer)

AppendName is part of the stats-internal adapter interface.

func (*Exporter) AppendTags

func (e *Exporter) AppendTags(rec export.Record, buf *bytes.Buffer)

AppendTags is part of the stats-internal adapter interface.

Source Files

dogstatsd.go

Version
v0.2.2
Published
Feb 27, 2020
Platform
linux/amd64
Imports
8 packages
Last checked
6 minutes ago

Tools for package owners.