1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# Define middlewares to transform statsd metrics before they are forwarded.
# Middlewares are applied top-to-bottom, and middlewares of the same `type` can
# be applied multiple times.
#
# `middlewares: []` will make statsdproxy forward UDP packets almost verbatim,
# regardless of whether the metrics are parseable or not. It's equivalent to
# specifying an empty configuration file or none at all.
middlewares:
# Remove a list of tag names ("a", "b" and "c") from incoming metrics
# Also removes tags that start or end with certain words ("foo" or "bar")
- type: deny-tag
tags:
starts_with:
ends_with:
# Allow a list of tag names ("a", "b" and "c") from incoming metrics, and
# remove all other tags.
- type: allow-tag
tags:
# Apply a limit on the number of timeseries that can be passed through.
# Multiple limits with different windows can be specified.
- type: cardinality-limit
limits:
- window: 3600
limit: 3
# Fold many metrics into one. Currently only gauges and counters are
# supported, other types or otherwise unparseable lines will be passed
# through unbuffered.
- type: aggregate-metrics
# Whether counters should be aggregated.
# Defaults to true.
#
# aggregate_counters: true
# Whether gauges should be aggregated.
# Defaults to true.
#
# aggregate_gauges: true
# Flush the aggregate buffer every `flush_interval` milliseconds.
# Defaults to 1 second.
#
# flush_interval: 1000
# Normally the times at which metrics are flushed are approximately aligned
# with a multiple of `flush_interval`. For example, a `flush_interval` of 1
# hour means that metrics are flushed at the start of every (wall clock)
# hour. You can change this parameter to shift this bucketing window by a
# number of seconds, possibly to remove certain artifacts when aggregating
# at multiple levels. The amount can be negative.
# Defaults to 0.
#
# flush_offset: 0
# The maximum number of metrics to buffer up. If that limit is hit, the map is forcibly
# flushed before the flush_interval.
# Defaults to no limit.
#
# max_map_size: ~