зеркало из https://github.com/microsoft/statsd.git
bugfix: allow bin upper limits to contain decimals
also modify an example to demonstrate
This commit is contained in:
Родитель
50dd2ae684
Коммит
92c46c357a
14
README.md
14
README.md
|
@ -57,13 +57,13 @@ ordered non-inclusive upper limits of bins (class intervals).
|
|||
(use `inf` to denote infinity; a lower limit of 0 is assumed)
|
||||
Each `flushInterval`, statsd will store how many values (absolute frequency)
|
||||
fall within each bin (class interval), for all matching metrics.
|
||||
First match wins. examples:
|
||||
Examples:
|
||||
|
||||
* no histograms for any timer (default): `[]`
|
||||
* histogram to only track render durations,
|
||||
with unequal class intervals and catchall for outliers:
|
||||
|
||||
[ { metric: 'render', bins: [8, 25, 50, 100, 'inf'] } ]
|
||||
[ { metric: 'render', bins: [ 0.01, 0.1, 1, 10, 'inf'] } ]
|
||||
|
||||
* histogram for all timers except 'foo' related,
|
||||
with equal class interval and catchall for outliers:
|
||||
|
@ -71,9 +71,13 @@ First match wins. examples:
|
|||
[ { metric: 'foo', bins: [] },
|
||||
{ metric: '', bins: [ 50, 100, 150, 200, 'inf'] } ]
|
||||
|
||||
Note that this is actually more powerful than what's strictly considered
|
||||
histograms, as you can make each bin arbitrarily wide if you want to
|
||||
(upto infinity), i.e. class intervals of different sizes.
|
||||
Note:
|
||||
|
||||
* first match for a metric wins.
|
||||
* bin upper limits may contain decimals.
|
||||
* this is actually more powerful than what's strictly considered
|
||||
histograms, as you can make each bin arbitrarily wide,
|
||||
i.e. class intervals of different sizes.
|
||||
|
||||
Sampling
|
||||
--------
|
||||
|
|
|
@ -142,7 +142,8 @@ var flush_stats = function graphite_flush(ts, metrics) {
|
|||
for (; i < count && (bins[bin_i] == 'inf' || values[i] < bins[bin_i]); i++) {
|
||||
freq += 1;
|
||||
}
|
||||
message += 'stats.timers.' + key + '.bin_' + bins[bin_i] + ' ' + freq + ' ' + ts + "\n";
|
||||
bin_name = ('bin_' + bins[bin_i]).replace('.','_');
|
||||
message += 'stats.timers.' + key + '.' + bin_name + ' ' + freq + ' ' + ts + "\n";
|
||||
}
|
||||
|
||||
statString += message;
|
||||
|
|
|
@ -59,7 +59,7 @@ Optional Variables:
|
|||
First match wins. examples:
|
||||
* histogram to only track render durations, with unequal
|
||||
class intervals and catchall for outliers:
|
||||
[ { metric: 'render', bins: [8, 25, 50, 100, 'inf'] } ]
|
||||
[ { metric: 'render', bins: [ 0.01, 0.1, 1, 10, 'inf'] } ]
|
||||
* histogram for all timers except 'foo' related,
|
||||
equal class interval and catchall for outliers:
|
||||
[ { metric: 'foo', bins: [] },
|
||||
|
|
Загрузка…
Ссылка в новой задаче