Skip to content

Instantly share code, notes, and snippets.

@bltavares
Created October 19, 2015 20:44
Show Gist options
  • Save bltavares/dd43130cc50eb58269ea to your computer and use it in GitHub Desktop.
Save bltavares/dd43130cc50eb58269ea to your computer and use it in GitHub Desktop.
diff --git a/doc/source/statsd.rst b/doc/source/statsd.rst
index b3bf99f..de0c414 100644
--- a/doc/source/statsd.rst
+++ b/doc/source/statsd.rst
@@ -26,6 +26,82 @@ Your init script most probably loads a configuration file named
STATSD_HOST=10.0.0.1
STATSD_PORT=8125
+Metrics Types
+-------------
+
+StatsD has different types of metrics to help produce better understanding of the system.
+They are the following:
+
+**counters**
+ The counters are simple numbers of events ocurrence over time. They could be
+ increased or decreased. StasD will send the information to Graphite into two
+ different prefixes:
+
+ **stats.<key>**
+ The count of events per-second. As StatsD has a flush interval to send
+ group of data to the graphite, this information will be the event counts
+ during the flush interval as a per-second average.
+
+ **stats_counts.<key>**
+ The counter of events for each of the key. As StatsD has a flush interval
+ to send group of data to the graphite, this information will be the count
+ of events happened during the flush interval.
+
+**timers**
+ Timers collect number values, and provide you with the extra timing metrics
+ calculated, as well as the 90 percentile calculations.
+
+ **stats.timers.<key>.count**
+ The count of timing events for the key per-second. As StatsD has a flush
+ interval to send group of data to the graphite, this information will be
+ the event counts during the flush interval as a per-second average.
+
+ **stats.timers.<key>.count_ps**
+ The count of timing events for the key per-second. As StatsD has a flush
+ interval to send group of data to the graphite, this information will be
+ the event counts during the flush interval as a per-second average.
+
+ **stats.timers.<key>.lower**
+ Lower bound of the timing events on the flush interval.
+
+ **stats.timers.<key>.mean**
+ The mean of the timing events on the flush interval.
+
+ **stats.timers.<key>.mean_90**
+ The 90 percentile mean of the timing events on the flush interval.
+
+ **stats.timers.<key>.median**
+ The median of the timing events on the flush interval.
+
+ **stats.timers.<key>.median_90**
+ The 90 percentile median of the timing events on the flush interval.
+
+ **stats.timers.<key>.std**
+ The standart deviation of the timing events on the flush interval.
+
+ **stats.timers.<key>.sum**
+ The sum of the timing events on the flush interval.
+
+ **stats.timers.<key>.sum_90**
+ The 90 percentile sum of the timing events on the flush interval.
+
+ **stats.timers.<key>.upper**
+ The upper bound of the timing events on the flush interval.
+
+ **stats.timers.<key>.upper_90**
+ The 90 percentile upper of the timing events on the flush interval.
+
+**Gauges**
+ Gauges are similar to counters, except that it does not increase with each
+ new event sent, only produce data points if the values are different. This is
+ useful for monitoring, as if there is much variance it could mean the system
+ needs some attention.
+
+ **stats.gauges.<key>**
+ The metrics related to a gauge event. Only if the value of the key differs
+ it will register a data point. Only the last value on the flush interval
+ will be sent.
+
Metrics
-------
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment