> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chronosphere.io/llms.txt
> Use this file to discover all available pages before exploring further.

# 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](https://github.com/wavefrontHQ/wavefront-sdk-go) 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:

```yaml theme={null}
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](https://docs.wavefront.com/wavefront_data_format.html) and [Sending Histogram
Distributions](https://docs.wavefront.com/proxies_histograms.html#sending-histogram-distributions).

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.

  ```yaml theme={null}
  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:

  ```yaml theme={null}
  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
  ```
