You are browsing a read-only backup copy of Wikitech. The primary site can be found at wikitech.wikimedia.org

Statsd: Difference between revisions

From Wikitech-static
Jump to navigation Jump to search
imported>Krinkle
No edit summary
imported>Krinkle
No edit summary
 
Line 5: Line 5:


== Service ==
== Service ==
Wikimedia currently uses the <code>statsite</code> implementation ([https://gerrit.wikimedia.org/g/operations/debs/statsite package], [https://statsite.github.io/statsite/ website]) which a [[:en:C_(programming_language)|C program]] wire-compatible with Etsy's original Statsd (a Node.js program).
Wikimedia currently uses the <code>statsite</code> implementation ([https://gerrit.wikimedia.org/g/operations/debs/statsite package], [https://statsite.github.io/statsite/ website]), written is a [[:en:C_(programming_language)|C program]] that is wire-compatible with Etsy's original Statsd (written in Node.js).


Several statsite deamons are hosted on the main [[Graphite]] servers, with a local load-balancer in front of them ([https://gerrit.wikimedia.org/g/operations/debs/statsd-proxy/ statsd-proxy]). You should access it through the canonical hostname "<code>statsd.eqiad.wmnet</code>".
Several statsite deamons are hosted on the main [[Graphite]] servers, with a local load-balancer in front of them ([https://gerrit.wikimedia.org/g/operations/debs/statsd-proxy/ statsd-proxy]). You should access it through the canonical hostname "<code>statsd.eqiad.wmnet</code>".


== History ==
== History ==
Use of Statsd was first deployed in 2015 using [https://gerrit.wikimedia.org/g/operations/software/statsdlb wikimedia/statsdlb] (a StatsD-compatible load-balancer written in C) and [https://statsite.github.io/statsite/ armon/statsite] (C implementation of statsd).
Use of Statsd was first deployed in 2015 using [https://gerrit.wikimedia.org/g/operations/software/statsdlb wikimedia/statsdlb], a StatsD-compatible load-balancer written in C by Ori Livneh. This ran in front of [https://statsite.github.io/statsite/ armon/statsite], a C implementation of statsd.


In 2016, the wikimedia/statsdlb service was replaced by [https://gerrit.wikimedia.org/g/operations/debs/statsd-proxy/ hit9/statsd-proxy] for performance reasons ([[phab:T126447|T126447]]).
In 2016, the wikimedia/statsdlb service was replaced by [https://gerrit.wikimedia.org/g/operations/debs/statsd-proxy/ hit9/statsd-proxy] for performance reasons ([[phab:T126447|T126447]]).

Latest revision as of 11:04, 14 August 2022

statsd is a metrics aggregation server. We use it to aggregate metrics for Graphite. It flushes data points to Graphite at an interval of 60 seconds (the highest resolution supported by our Graphite configuration), otherwise only the last data point in a given minute would be stored. Statsd also adds various properties to the data such as .rate.median.p95, etc. More about that at Graphite#Extended properties.

Service

Wikimedia currently uses the statsite implementation (package, website), written is a C program that is wire-compatible with Etsy's original Statsd (written in Node.js).

Several statsite deamons are hosted on the main Graphite servers, with a local load-balancer in front of them (statsd-proxy). You should access it through the canonical hostname "statsd.eqiad.wmnet".

History

Use of Statsd was first deployed in 2015 using wikimedia/statsdlb, a StatsD-compatible load-balancer written in C by Ori Livneh. This ran in front of armon/statsite, a C implementation of statsd.

In 2016, the wikimedia/statsdlb service was replaced by hit9/statsd-proxy for performance reasons (T126447).

Use in Cloud Services environment

The hosts cloudmetrics1001 and cloudmetrics1002 have Statsd running, listening for UDP traffic on port 8125. There is no service name for it (see phab:T241284).

Metrics can be sent to Statsd in Bash using echo -n "foo.bar.baz:23|c" | nc -w 1 -u cloudmetrics1001.eqiad.wmnet 8125

See also