Michael Leinartas has proposed merging 
lp:~mleinartas/graphite/aggregation_overwrite into lp:graphite.

Requested reviews:
  graphite-dev (graphite-dev)

For more details, see:
https://code.launchpad.net/~mleinartas/graphite/aggregation_overwrite/+merge/85606

This is a small patch to address the issue here: 
https://answers.launchpad.net/graphite/+question/179788 which is something I 
also run into and have had to work around.

There is a use case for using carbon-aggregator to aggregate incoming metrics 
and have the original values discarded and replaced with the new, aggregated 
ones. This could, for instance, replace the role of statsd and its clones for 
some users. The existing behavior is also surprising and I cannot imagine a 
case where it would be a desired behavior.
-- 
https://code.launchpad.net/~mleinartas/graphite/aggregation_overwrite/+merge/85606
Your team graphite-dev is requested to review the proposed merge of 
lp:~mleinartas/graphite/aggregation_overwrite into lp:graphite.
=== modified file 'carbon/lib/carbon/aggregator/receiver.py'
--- carbon/lib/carbon/aggregator/receiver.py	2011-08-19 07:19:16 +0000
+++ carbon/lib/carbon/aggregator/receiver.py	2011-12-14 05:30:41 +0000
@@ -11,11 +11,15 @@
   for rule in RewriteRuleManager.preRules:
     metric = rule.apply(metric)
 
+  aggregate_metrics = []
+
   for rule in RuleManager.rules:
     aggregate_metric = rule.get_aggregate_metric(metric)
 
     if aggregate_metric is None:
       continue
+    else
+      aggregate_metrics.append(aggregate_metric)
 
     buffer = BufferManager.get_buffer(aggregate_metric)
 
@@ -27,4 +31,5 @@
   for rule in RewriteRuleManager.postRules:
     metric = rule.apply(metric)
 
-  events.metricGenerated(metric, datapoint)
+  if metric not in aggregate_metrics:
+    events.metricGenerated(metric, datapoint)

_______________________________________________
Mailing list: https://launchpad.net/~graphite-dev
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~graphite-dev
More help   : https://help.launchpad.net/ListHelp

Reply via email to