Wavefront

You can configure the Collector to accept metric payloads in Wavefront data format, instrumented with a Wavefront client library, such as the wavefront-sdk-go (opens in a new tab) library.

Basic configuration and data format

To enable Wavefront ingestion for the Collector, add the wavefront configuration block under the push key in the Collector configuration:

push:
  wavefront:
    enabled: true

The metrics ingestion protocol used by Wavefront requires clients to submit their metrics to compatible backends using HTTP POST. The payload should be sent as text in the Wavefront data format. Each HTTP POST body can contain multiple metrics/distributions, separated by newlines. Learn more about the Wavefront Data Format (opens in a new tab) and Sending Histogram Distributions (opens in a new tab).

The Collector Wavefront endpoint serves from the path /wavefront/report from the listenAddress, which defaults to 0.0.0.0:3030.

The Collector implementation for Wavefront can parse collectDLabels from the metric name and store them as tags for the time series. For example, a metric name like k8s.service1[label1=value1,label2=value2]test produces a metric name of k8s_service1test, with labels label1=value1 and label2=value2.

Advanced configuration options

  • mode

    The mode field is optional and its default value is regular. The field can take other values, such as graphite and graphite_expanded. This field controls metric name sanitizing and storage in Chronosphere. Similar to the DogStatsD configuration, Wavefront configuration also supports this field and exhibits similar behavior.

    push:
    wavefront:
      enabled: true
      mode: graphite
  • defaultHistogramBuckets

    The histograms' default upper bounds for distribution-type metrics span from two milliseconds to 3,600 seconds. In most cases, the default settings are sufficient. If necessary, adjust these default values using the defaultHistogramBuckets key in the configuration, as demonstrated here:

    push:
    wavefront:
      enabled: true
      mode: regular
      defaultHistogramBuckets:
      - upper: 0.004
      - upper: 0.006
      - upper: 0.008
      - upper: 0.01
      - upper: 0.02
      - upper: 0.04
      - upper: 0.06
      - upper: 0.08
      - upper: 0.1
      - upper: 0.2
      - upper: 0.4
      - upper: 0.6
      - upper: 0.8
      - upper: 1.0
      - upper: 1.5
      - upper: 2.0
      - upper: 2.5
      - upper: 3.0
      - upper: 3.5
      - upper: 4.0
      - upper: 4.5
      - upper: 5.0
      - upper: 5.5
      - upper: 6.0
      - upper: 6.5
      - upper: 7.0
      - upper: 7.5
      - upper: 8.0
      - upper: 8.5
      - upper: 9.0
      - upper: 9.5
      - upper: 10
      - upper: 15
      - upper: 20
      - upper: 25
      - upper: 30
      - upper: 35
      - upper: 40
      - upper: 45
      - upper: 50
      - upper: 55
      - upper: 60
      - upper: 150
      - upper: 300
      - upper: 450
      - upper: 600
      - upper: 900
      - upper: 1200
      - upper: 1500
      - upper: 1800
      - upper: 2100
      - upper: 2400
      - upper: 2700
      - upper: 3000
      - upper: 3300
      - upper: 3600