← Back to team overview

graphite-dev team mailing list archive

Re: [Question #666860]: Graphite: Pass same filtered SeriesList from two different days to asPercent()

 

Question #666860 on Graphite changed:
https://answers.launchpad.net/graphite/+question/666860

Description changed to:
I have a graphite metric for event counts for different placements as
following:

stats.counters.events.placements.count

I am interested to find the percentage comparison between today's and
yesterdays's same time 2 hour moving averages for each placement. I have
the following function which is working fine:

    asPercent(
        groupByNode(
            movingAverage(stats.counters.events.*.count, '2hour'), 
        3, "averageSeries"),        
        groupByNode(
            movingAverage(
                timeShift(stats.counters.events.*.count, '1d'), 
            '2hour'), 
        3, "averageSeries")
    )

Now I want to enhance it, by adding some filter. E.g. some of my
placement counts are very low, I want to filter those placements out for
which yesterday's movingAverage count is less than 100.

so basically find the filtered seriesList of placements from yesterday
(denominator) and compare the SAME placement list counts from today
(numerator)

I got yesterday's list:

    averageAbove(timeShift(stats.counters.events.*.count, '1d'), 100)

but not sure how to enforce the same placement list for today's count
(on the numerator), since applying averageAbove() on today's count i.e.

    averageAbove(stats.counters.events.*.count, 100)

may give a different list, and pass two different seriesLists to the
asPercent().

Is there any way to achieve this by using mapSeries()/reduceSeries()
combination or by some other way.

Thanks in advance.

-- 
You received this question notification because your team graphite-dev
is an answer contact for Graphite.