diff --git a/README.md b/README.md index b97ee6e..9e411ea 100644 --- a/README.md +++ b/README.md @@ -136,10 +136,9 @@ NOTE: Version 0.7.0 switched to the [kingpin](https://github.com/alecthomas/king Number of events to hold in queue before flushing --statsd.event-flush-interval=200ms - Number of events to hold in queue before - flushing - --debug.dump-fsm="" The path to dump internal FSM generated for glob - matching as Dot file. + Maximum time between event queue flushes. + --debug.dump-fsm="" The path to dump internal FSM generated for + glob matching as Dot file. --check-config Check configuration and exit. --statsd.parse-dogstatsd-tags Parse DogStatsd style tags. Enabled by default. @@ -327,6 +326,16 @@ mappings: job: "${1}_server" ``` +If not set, then the default +[Prometheus client +values](https://godoc.org/github.com/prometheus/client_golang/prometheus#pkg-variables) +are used for the histogram buckets: +`[.005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10]`. +`+Inf` is added automatically. + +`observer_type` is only used when the statsd metric type is a timer, histogram, or distribution. +`buckets` is only used when the statsd metric type is one of these, and the `observer_type` is set to `histogram`. + Timers will be accepted with the `ms` statsd type. Statsd timer data is transmitted in milliseconds, while Prometheus expects the unit to be seconds. The exporter converts all timer observations to seconds. @@ -360,13 +369,6 @@ mappings: code: "$4" ``` -Note, that one may also set the histogram buckets. If not set, then the default -[Prometheus client values](https://godoc.org/github.com/prometheus/client_golang/prometheus#pkg-variables) are used: `[.005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10]`. `+Inf` is added -automatically. - -`observer_type` is only used when the statsd metric type is a timer, histogram, or distribution. -`buckets` is only used when the statsd metric type is one of these, and the `observer_type` is set to `histogram`. - ### Global defaults One may also set defaults for the observer type, buckets or quantiles, and match type. diff --git a/main.go b/main.go index 27a529c..5d9dcf3 100644 --- a/main.go +++ b/main.go @@ -260,9 +260,9 @@ func main() { readBuffer = kingpin.Flag("statsd.read-buffer", "Size (in bytes) of the operating system's transmit read buffer associated with the UDP or Unixgram connection. Please make sure the kernel parameters net.core.rmem_max is set to a value greater than the value specified.").Int() cacheSize = kingpin.Flag("statsd.cache-size", "Maximum size of your metric mapping cache. Relies on least recently used replacement policy if max size is reached.").Default("1000").Int() cacheType = kingpin.Flag("statsd.cache-type", "Metric mapping cache type. Valid options are \"lru\" and \"random\"").Default("lru").Enum("lru", "random") - eventQueueSize = kingpin.Flag("statsd.event-queue-size", "Size of internal queue for processing events").Default("10000").Int() - eventFlushThreshold = kingpin.Flag("statsd.event-flush-threshold", "Number of events to hold in queue before flushing").Default("1000").Int() - eventFlushInterval = kingpin.Flag("statsd.event-flush-interval", "Number of events to hold in queue before flushing").Default("200ms").Duration() + eventQueueSize = kingpin.Flag("statsd.event-queue-size", "Size of internal queue for processing events.").Default("10000").Int() + eventFlushThreshold = kingpin.Flag("statsd.event-flush-threshold", "Number of events to hold in queue before flushing.").Default("1000").Int() + eventFlushInterval = kingpin.Flag("statsd.event-flush-interval", "Maximum time between event queue flushes.").Default("200ms").Duration() dumpFSMPath = kingpin.Flag("debug.dump-fsm", "The path to dump internal FSM generated for glob matching as Dot file.").Default("").String() checkConfig = kingpin.Flag("check-config", "Check configuration and exit.").Default("false").Bool() dogstatsdTagsEnabled = kingpin.Flag("statsd.parse-dogstatsd-tags", "Parse DogStatsd style tags. Enabled by default.").Default("true").Bool()