Skip to content

Commit a55de9d

Browse files
documentation updates for upcoming release
1 parent dc3d786 commit a55de9d

12 files changed

+84
-5
lines changed

build/tag.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,5 @@ fi
2323

2424
sed -i '' -e "s|^var version .*$|var version = \"$v\"|" $basedir/main.go
2525
git add $basedir/main.go
26-
git commit -S -m "Release v$v"
26+
git commit -S -m "Release v$v" || true
2727
git tag -s v$v -m "Tag v${v}"

docs/content/feature/metrics.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,19 @@ to avoid computing large amounts of metrics. The metrics can be send to
1111
options in the [fabio.properties](https://github.com/eBay/fabio/blob/master/fabio.properties)
1212
file.
1313

14+
### Configuring Prometheus Metrics
15+
16+
To configure prometheus metrics, you need two do the following:
17+
18+
1) You must specify that prometheus is the [metrics.target](/ref/metrics.target/)
19+
2) You must configure a listener with [proxy.addr](/ref/proxy.addr/) with `proto=prometheus`
20+
3) (optional) override the
21+
[metrics.prometheus.path](/ref/metrics.prometheus.path/),
22+
[metrics.prometheus.subsystem](/ref/metrics.prometheus.subsystem/),
23+
and [metrics.prometheus.buckets](/ref/metrics.prometheus.buckets/).
24+
25+
### Metrics info (for non-tagged backends, such as circonus and statsd_raw)
26+
1427
Fabio reports the following metrics:
1528

1629
Name | Type | Description
@@ -60,3 +73,4 @@ A gauge provides a current value.
6073
with the `metrics.names` template defined in
6174
[fabio.properties](https://github.com/fabiolb/fabio/blob/master/fabio.properties)
6275

76+
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
---
2+
title: "metrics.dogstatsd.addr"
3+
---
4+
5+
`metrics.dogstatsd.addr` configures the host:port of the dogstatsd
6+
server.
7+
8+
This is required when [metrics.target](/ref/metrics.target/) is set to `dogstatsd`.
9+
10+
The default is
11+
12+
metrics.statsd.addr =

docs/content/ref/metrics.names.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
title: "metrics.names"
33
---
44

5-
`metrics.names` configures the template for the route metric names.
5+
`metrics.names` configures the template for the route metric names
6+
on backends that don't support tags. This is used in circonus,
7+
graphite and statsd_raw. dogstatsd and prometheus ignore this.
68
The value is expanded by the [text/template](https://golang.org/pkg/text/template) package and provides
79
the following variables:
810

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
title: "metrics.prometheus.buckets"
3+
---
4+
5+
`metrics.prometheus.buckets` configures the time buckets for use with histograms, measured in seconds.
6+
for instance, .005 is equivalent to 5ms. There is an implied "infinity" bucket tacked on at the end.
7+
8+
The default is
9+
`metrics.prometheus.buckets = .005,.01,.025,.05,.1,.25,.5,1,2.5,5,10`
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
title: "metrics.prometheus.path"
3+
---
4+
5+
`metrics.prometheus.path` configures the path to serve up metrics on any configured
6+
[proxy.addr](/ref/proxy.addr/) where `proto=prometheus`.
7+
8+
Defaults to `/metrics/`
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
title: "metrics.prometheus.subsystem"
3+
---
4+
5+
`metrics.prometheus.subsystem` configures the subsystem name when reporting
6+
metrics. This is basically appended to the prefix for metric names.
7+
8+
See https://prometheus.io/docs/practices/instrumentation/#subsystems
9+
for more information.

docs/content/ref/metrics.statsd.addr.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ title: "metrics.statsd.addr"
55
`metrics.statsd.addr` configures the host:port of the StatsD
66
server.
77

8-
This is required when [metrics.target](/ref/metrics.target/) is set to `statsd`.
8+
This is required when [metrics.target](/ref/metrics.target/) is set to `statsd_raw`.
99

1010
The default is
1111

docs/content/ref/metrics.target.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,18 @@ Possible values are:
99
* `<empty>`: do not report metrics
1010
* `stdout`: report metrics to stdout
1111
* `graphite`: report metrics to Graphite on [metrics.graphite.addr](/ref/metrics.graphite.addr/)
12-
* `statsd`: report metrics to StatsD on [metrics.statsd.addr](/ref/metrics.statsd.addr/)
13-
* `circonus`: report metrics to Circonus (http://circonus.com/)
12+
* `statsd`: legacy statsd support, used in v1.5.5 and lower - removed in v1.6
13+
* `statsd_raw`: report metrics to StatsD on [metrics.statsd.addr](/ref/metrics.statsd.addr/) - this was
14+
intentionally renamed because anyone upgrading to 1.6 will need to revisit their configuration anyway due to
15+
rewrite of this backend. It was quite broken before, the counters never reset, it did not follow the spec so the info was
16+
likely wrong or people using this were doing some workarounds they'll need to remove anyway.
17+
* `circonus`: report metrics to Circonus (https://circonus.com/)
18+
* `prometheus`: use prometheus metrics. (https://prometheus.io) Must be used in conjuction with a prometheus
19+
listener in [proxy.addr](/ref/proxy.addr/])
20+
* `dogstatsd`: use with datadog dogstatsd (https://www.datadoghq.com/)
1421

1522
The default is
1623

1724
metrics.target =
25+
26+
Multiple metrics targets can be defined separated by comma.

docs/content/ref/proxy.addr.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ The supported protocols are:
2424
* `tcp+sni` for an SNI aware TCP proxy
2525
* `tcp-dynamic` for a consul driven TCP proxy
2626
* `https+tcp+sni` for an SNI aware TCP proxy with https fallthrough
27+
* `prometheus` for a prometheus metrics endpoint. Used in conjunction with [metrics.target](/ref/metrics.target/)
28+
=prometheus
2729

2830
If no `proto` option is specified then the protocol
2931
is either `http` or `https` depending on whether a

0 commit comments

Comments
 (0)