Questions tagged [statsd]

A simple, lightweight network daemon to collect and aggregate metrics over UDP.

About

StatsD is developed by Etsy team and is written in node.js. It is a network daemon which listens on a predefined port for UDP packets that are send to it which describe different data metrics, aggregates them, and flushes the aggregated data through back end defined by the user.

The applications can feed any number of UDP packets in formats defined by statsD termed as buckets.

StatsD aggregates the data received over UDP and creates the result for the defined flush interval and sends it to the defined backend.

The default backend provided by statsD is graphite and it has options to choose the backend that may fit the application scenario.

Concepts

  1. buckets : Each stat is in its own "bucket". They are not predefined anywhere. Buckets can be named anything that will translate to Graphite (periods make folders, etc)
  2. values : Each stat will have a value. How it is interpreted depends on modifiers
  3. flush : After the flush interval timeout (default 10 seconds), stats are munged and sent over to Graphite or any other backend choosen.

Supported Backends

  1. Graphite (graphite): An open-source time-series data store that provides visualization through a web-browser.
  2. Console (console): Outputs the received metrics to stdout (see what's going on during development).
  3. Repeater (repeater): Utilizes the packet emit API to forward raw packets retrieved by StatsD to multiple backend StatsD instances.
  4. More options available as separate packges can be found here

Open Source

fork StatsD from here: http://github.com/etsy/statsd

323 questions
0
votes
1 answer

Graphite, how to change request rate to 1 min

I have recently installed statsd with Graphite. Statsd is working in logstash: statsd { host => "localhost" port => 8125 debug => false increment => "%{dhcp}" } Graphite storage-schemas.conf: [stats] pattern = ^stats.* retentions =…
Atlas
  • 179
  • 1
  • 2
  • 9
0
votes
2 answers

I am using collectd (c plugin) with graphite, how do I merge the graphs together (cpu, network,etc)?

I am using collectd (c plugin) with graphite, and all the info like eth0, eth1 cpu0, cpu1, cpu2 etc are saved in graphite as one graph. How do I merge the graphs together, like all the CPU's? Its somehow not very intuitive~ Thank you
laapsaap
  • 181
  • 11
0
votes
2 answers

Statsd dying silently

Statsd being started by Chef is dying. I believe I have isolated the problem away from Chef as the INIT script Chef is calling is doing what it is suppose to. I have turned debug on for statsd and in the log the following is the last messages before…
SamA
  • 587
  • 3
  • 6
0
votes
1 answer

Graphite + Statsd, different values on different time range

While using StatsD and Graphite, I'm running into problems while viewing the same stats_counts.* metrics value in different time ranges: As you can see from the graphs above, the same measured data is being viewed differently when picking a bigger…
Mikey S.
  • 3,301
  • 6
  • 36
  • 55
0
votes
1 answer

Statsd & Graphite statistics per given item, not time

It is easy to process any metrics with statsd and graphite, assuming they are measured per timespan. As an example, it is easy to track number of request per second. On the other hand, sometimes might be useful to track a metric based on given…
Pavel S.
  • 11,892
  • 18
  • 75
  • 113
0
votes
1 answer

How do I use StatsD with Zend Framework application?

In essense I am curious about how other people do that, specifically -- do you wrap StatsD example PHP client in your own class? Where to you store configuration for it? Any gotchas for using statsd in ZF based application? Thank you! PS: Since I am…
Alex N.
  • 14,805
  • 10
  • 46
  • 54
0
votes
1 answer

Average measurement over a few devices

I have a few devices that emit time series data: [deviceID],[time],[value] I am using graphite to keep track of this data but the question applies to other databases as well. I have defined my data retention/precision to be 5 seconds - so each…
Yaron Naveh
  • 23,560
  • 32
  • 103
  • 158
0
votes
2 answers

20% of lost values after statsd

I need to supervise an real time application. This application receives 60 connections per seconds and for each I use 53 metrics. So my simulation client sent 3180 metrics personds. I need the lower, upper, average, median and the count_ps values.…
0
votes
3 answers

How do I setup a 1:N workflow with filters in Logstash?

I'm trying to setup a single logstash worker that takes all messages from a one amqp/rabbitmq queue, filters some of the messages to send to statsD but also sends ALL the messages to elastic search. The following implementation only doesn't send ANY…
TCopple
  • 880
  • 7
  • 14
0
votes
1 answer

Creating one graph per node in Graphite and statsd

I am using graphite with statsd to collect various pieces of data from an application I have clustered in ec2. Among other things I have statistics for messages delivered by by application ond those that failed delivery. Because the number of…
RockyMountainHigh
  • 2,871
  • 5
  • 34
  • 68
0
votes
1 answer

statsd current time is two hours in the future--how to fix?

When looking at our statsd data in graphite, the graphs are saying the current time is two hours in the future. For instance, if we're looking at graphite at 9:00am, the graphs are telling us it's 11:00am. The data lines up like it should--if we…
Kevin G.
  • 1,424
  • 1
  • 13
  • 22
0
votes
1 answer

Statsd + Graphie , showinglow fequency events

I am using the stadard Graphite + Statsd stack. A 10 sec statsD interval + 10s graphite retention schema. I have several events that happen 1K - 10K times a day. And I would like to show them in a graph too. But the graph is too flat (24h range of…
Roman
  • 7,933
  • 17
  • 56
  • 72
0
votes
2 answers

Transform for graphite counter

I'm using the incr function from the python statsd client. The key I'm sending for the name is registered in graphite but it shows up as a flat line on the graph. What filters or transforms do I need to apply to get the rate of the increments over…
AJP
  • 26,547
  • 23
  • 88
  • 127
0
votes
1 answer

Graphite: Using holtWintersConfidenceBands on large period (for accuracy) but getting last x minutes datapoints

Is there a way to execute the holtWintersConfidenceBands on large period but to get only last x minutes datapoints? For example: I want to execute the holtWintersConfidenceBands function on the last 30 days but to get only the last 30 minutes result…
Tomer Peled
  • 3,571
  • 5
  • 35
  • 57
0
votes
1 answer

Statsd send method

Does anyone know what the purpose of the sampleRate check and random number is for in the Send method e.g. in the c# sample: if (sampleRate < 1.0) { foreach (var stat in stats) { if (Random.NextDouble() <= sampleRate) { Just seems to be you…
Noel
  • 5,037
  • 9
  • 46
  • 69
1 2 3
21
22