background preloader

Graphite

Facebook Twitter

Question #193502 : Questions : Graphite. Hi, I apologize for a quite long question.

Question #193502 : Questions : Graphite

I tried to keep it short and concise. Version of graphite: Latest from pip=0.9.9 I am trying to import a timeseries containing the value "1" when a certain event has happened. My idea is to visualize how many times this event happened for example per hour, day or week. However, my import does not seem to be giving me reasonable values; I am getting values of 1:s far back in time despite the fact that I know they should have happened more. Since I wasn't sure the expected behaviour when setting the same value over and over again ( I tried different ways of importing my historical data such as importing into a "1m:2y" Whisper databas and then resizing it to "5m:2h, 1h:7d, 1d:730d" to get the aggregation right.

To try to figure out whether I am on the right track I made two test scripts: Script 1: ======================================= #! Question #197816 : Questions : Graphite. I am attempting to resize thousands of metrics and I am curious if anyone knows the most efficient way to do this (notes below).

Question #197816 : Questions : Graphite

The servers are beefy and attached to SAN. I shutdown carbon while resizing metrics. If old find/exec is the only way to do this and will run for awhile, can this be done while carbon is running and not create any problems. I use a top level directory to find all metrics. Maybe going down a level or two and starting multiple resize scripts would also work to speed things up??? XARGS does not work as it attempts to pass more than one wsp file name to the resize script and I get an error. find . OLD EXEC works but takes a long time due to it going thru each and every whisper file one-by-one and not doing so in bulk. find . NEW EXEC does not work and suffers from the same problem as xargs. find . Graphite Project. Graphite-project/whisper. Unix Blather – Creating a Scalable Graphite Cluster.

There are a few decent posts on the internet about clustering graphite.

Unix Blather – Creating a Scalable Graphite Cluster

Most examples I found were generally straight forward, but none of them addressed metric aggregation. My employer requires aggregation for various subsets of metric data. So be it. The write intensive ssd graphite servers in a mirrored configuration were bogged down from i/o saturation to the point of failing to render requests. We were also approaching the impending doom of storage constraints. Metrics don't have any value if you can't ingest the data. My goal was to migrate to a real cluster without painting myself into another corner. The flexability of the carbon daemons made for an easy solution. Here is a brief overview of the solution that meets my requirements and fulfills my personal goals. Metric sources first feed into redis. This set up will thin out resource demands and allow every piece of the puzzle to scale to most real world scenarios. Graphite Series #3: Whisper Storage Schemas & Aggregations — Franklin Angulo. What about the aggregations?

Graphite Series #3: Whisper Storage Schemas & Aggregations — Franklin Angulo

Aggregations come into play when data from a high precision bucket is moved to a lower precision bucket. Let's use Bucket A and B from our previous example. Bucket A: 10-second resolution retained for 6 hours (higher precision)Bucket B: 60-second resolution retained for 1 day (lower precision) We might have an application publishing data points every 10 seconds. Question #152701 : Questions : Graphite. 841441 – Increase retention time in Graphite. Installing and Configuring Graphite and Statsd on an Ubuntu 12.04 VPS. Introduction.

Installing and Configuring Graphite and Statsd on an Ubuntu 12.04 VPS

Quick examples of how to change many many wsp (graphite/whisper) files settings. Configuring Carbon — Graphite 0.10.0 documentation. Carbon’s config files all live in /opt/graphite/conf/.

Configuring Carbon — Graphite 0.10.0 documentation

If you’ve just installed Graphite, none of the .conf files will exist yet, but there will be a .conf.example file for each one. Simply copy the example files, removing the .example extension, and customize your settings. pushd /opt/graphite/conf cp carbon.conf.example carbon.conf cp storage-schemas.conf.example storage-schemas.conf The example defaults are sane, but they may not meet your information resolution needs or storage limitations. carbon.conf¶ This is the main config file, and defines the settings for each Carbon daemon.

Each setting within this file is documented via comments in the config file itself. Tip Carbon-cache and carbon-relay can run on the same host! Resizing a Whisper Database. As part of my re-engineering of our internal servers to be deployable from SaltStack, I needed to create scripts to rebuild our graphite/carbon/whisper metrics gathering systems.

Resizing a Whisper Database

During the course of replaying the install/build scripts I discovered that the Whisper Database is a fixed size based on the retention policy initially configured, which in my case was only a few hours of data and so attempting to display the graphite chart beyond the retention time resulted in blank graphs! So here is a quick examples of how to resize the graphite/whisper database files (they have an extension of “wsp’):