New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[feature request] asPercent taking two series lists #207
Comments
Comment by tewner on Jun 11, 2012:I have a similar request with "divideSeries" - I want to specify a wildcard list of hosts and divide two metrics from each host - I still would love to use the coolest feature of Graphite - I want new plots for new hosts as the hosts are created. cactiStyle( |
Comment by tewner on Jun 11, 2012:Small difference with my situation is that because I want to use wildcards, I need the 2 series' matched by host, and not by position in the series. Group-by index in the NODE name (likegroupByNode) SHOULD be ok, though. |
+1 from me for this feature |
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
❤️ Does this rely on any other PRs? |
No, it works as is :) |
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
Nope :) |
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
Status here? |
Not very good as I see - #551 needs to be rebased and tests need to be added (IIRC no function changes w/o testing accepted). |
Is there another workaround right now? |
Sorry, I didn't have the take to get into this again (I'm not regularly working with this so I will have to dive into graphite again to rebase and add tests, so it might not happen very soon :-/ ). |
looking forward to this feature! :) |
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
If multiple series as used as total, the length of the total series must match the length of the seriesList, and they will be matched together to calculate the percentage of the individual values. This fixes graphite-project#207.
|
Thanks @obfuscurity, asPercent works great. But the original issue description and subsequent comments also included divideSeries, but it looks like only asPercent was actually addressed? I looked but failed to find a separate issue for divideSeries. Would it make sense to create one or reopen this? |
@ericy-jana Correct. Can you elaborate on a user case not covered by the |
@obfuscurity I am trying to graph I/O latency from stats fed to Graphite by a Sensu check reading /proc/diskstats (https://github.com/sensu-plugins/sensu-plugins-disk-checks/blob/master/bin/metrics-disk.rb). I am trying to divide the time spent doing I/O over the sample period by the number of I/O operations during the same time period. This works ok if I am graphing a single host, but fails when using variables/wildcards to attempt to graph multiple hosts. This same pattern used to fail in a similar way with Below is the Edit - After typing this up a colleague made the suggestion that I could just use the asPercent function and scale it by 0.01 which works fine.
|
Imported from https://bugs.launchpad.net/bugs/1005366
Originial Desc:
I have a use case where I need to find the percentage between two series lists like:
asPercent(groupByNode(serieslist1, x, "sumSeries"), groupByNode(serieslist2, y, "sumSeries"))
Is there way to achieve this? If not and if you find this useful may I request a feature addition where, when two series lists with "equal length" are passed as parameters to asPercent, it will return a serieslist with the same length where each series is a percentage of the individual input series?
Michael's Response:
I think asPercent and divideSeries could probably support this - rather
than the 2nd series being required to have a length of 1, it could be
required to have either: a length of 1 (current behavior) or a length
equal to the 1st series (your proposed behavior).
Unfortunately I cant spot a way to do this without having to enumerate
every series out.
If you'd like the new feature to be explored, convert this question to a
bug report and mark it as a feature request so that it can be tracked.
The text was updated successfully, but these errors were encountered: