Question #193502 : Questions : Graphite. Hi, I apologize for a quite long question.
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).
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 . Graphite Project. Graphite-project/whisper. Unix Blather – Creating a Scalable Graphite Cluster. There are a few decent posts on the internet about clustering graphite.
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?
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.
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/.
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! Storage-schemas.conf¶ This configuration file details retention rates for storing metrics. Important notes before continuing: A given rule is made up of 3 lines: The retentions line can specify multiple retentions. S - secondm - minuteh - hourd - dayy - year. 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.
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’):