Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm trying to figure out something that's counter-intuitive for me in Graphite.

I am collecting (for now) test data (with statsd). In Graphite's dashboard, I'm seeing lower peaks for the same set of data for a longer time series.

enter image description here

enter image description here

My retention is set to:

retentions = 10s:15m,60s:1d,5m:7d,1h:4w,1d:5y

Why wouldn't the second chart showing 30 minutes not have peaks at least as high as the highest peaks in the 15 minute chart? How can I get this chart to accurately reflect these stats over time?

share|improve this question
up vote 3 down vote accepted

The peaks are lower because graphite uses averages to downsample metrics when thresholds are crossed. You cross the 15m threshold so the resolution went from 10s to 60s. E.g., suppose you have this data:

  • T+0: 0
  • T+10s: 0
  • T+20s: 0
  • T+30s: 0
  • T+40s: 100
  • T+50s: 100

Viewing time T+50s on a 15m graph will give you 100. Viewing time T+50s on a 30m graph will give you 33.3 (200/6).

Since 0.9.9 you can change the aggregation method. For your case in storage-aggregation.conf you'd use aggregationMethod=max. See

share|improve this answer
Lovely, I'll give this a shot and accept your answer. Thanks! – ceejayoz May 18 '13 at 1:08

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.