Backend selection based on query#10
Draft
github-vincent-miszczak wants to merge 32 commits intomainfrom
Draft
Conversation
Port a commit that Avito did in their fork of carbonapi
This commit adds an optional parameter `allowFormatStr`
to `alias` function, if set to `True` it will replace all
all `${expr}` passed in alias string with actual original
expression.
Original code: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/aliasByBase64 Mostly done by errx@ and kolobaev@ This function allows to decode metric if it's base64-encoded
Original implementation: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/aliasByHash Done by: errx@ Adds a function that queries Hash stored in Redis Hash name is specified as a parameter in a query. Field name is the first part of a metric's name.
Original code: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/baselines Original authors: @el-yurchito, @errx * baseline computes baseline for the metric * baselineAbberation - computes deviation of a metric from baseline
This change is based on idea of function `event` from avito's carbonapi fork. Original code: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/event Original authors: @PAFomin-at-avito, @el-yurchito This adds an argument to transformNull function that would create a constant metric if no results were returned from a backend. This might be useful in case you are working with events that might not be present for a certain periods of time in a past.
Original code: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/heatMap Original authors: @el-yurchito This is a heat-map like function that do diff between series, based on their computed weight. All metrics are assigned weights, based on the sum of their first 5 values and then sorted based on that. After that for the sorted metrics, diff with the previous one will be computed. Assuming seriesList has values N series in total (sorted by sum of the first 5 values): (a[1], a[2], ..., a[N]). Then heatMap will output N-1 series: (a[2] - a[1], a[3] - a[2], ..., a[N] - a[N-1]).
Original code: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/highest Original author: @PAFomin-at-avito Add lowestMin and lowestMax functions and corresponding tests.
Updating description of heatMap function based on an answers from kolobaev.
Original code: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/integralWithReset Origial author: @PAFomin-at-avito Just like integral(seriesList) but with resets: every time resettingSeries is not 0, the integral resets to 0.
Tests were directly taken from: https://github.com/el-yurchito/carbonapi/commit/dfbb4cc53b4403826a9b3f004bf7208524b3153b#diff-32f5f0a7da5ffc6e0cfea529e4dd87956d1105ea271687a78d8316834eb5c8ad Author of the tests: @PAFomin-at-avito Also fix a problem with round function that it didn't respect that the argument can be a named argument.
Original code: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/slo Origianl authors: @el-yurchito * slo - Returns ratio of points which are in `interval` range and are above/below (`method`) than `value` * sloErrorBudget - Returns rest failure/error budget for this time interval
Origial commit: https://github.com/el-yurchito/carbonapi/commit/557c8f1c17073d279aa54e92a8a0266ae7e78aca#diff-8f6349c451235a3e9f838e963545c96fa546b551738b6dbbdd3e886575bb9928 Original author: @el-yurchito Add a proper support for `reverse` paramter. It was advertised, but was never actually used. Also append avito's test cases to one that we currently have.
Original code: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/timeShiftByMetric Original author: @el-yurchito Takes a seriesList with wildcard in versionRankIndex rank and applies shift to the closest version from markSource
Original code: https://github.com/el-yurchito/carbonapi/commits/master/expr/functions/timeSlice Original author: @errx Add graphite's timeSlice function
Original code: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/interpolate Original author: @el-yurchito Graphite's interpolate function
Original code: https://github.com/el-yurchito/carbonapi/tree/master/expr/functions/scale Original author: @el-yurchito Adds an optional parameter to `scale` function, called `timestamp` If present, it will scale metric only after certain point. Difference from original implementation - that's not a separate function
… graphite-web@master In current master, there are some new argument types and options available, e.x. for smartSummarize and option `alignTo` it is not possible to specify `null`, `true` and `false` as well as `"minutes"`, `"years"`, etc. This requires some changes to functiondiff tool and to all to do some internal data-type changes for the descriptions struct.
As those functions are not backed by graphiteWeb function, this should be set to `false`, so removing those fields.
Check compatibility with latest stable graphite-web (1.1.7) and explicitly mention which version was used.
…d countSeries And update COMPATIBILITY.md file
…y when maxBatchSize > 0) When request splitting was used and some of the servers didn't replied but others did - such requests were handled as failed and no data was returned, which resulted in error 500 from carbonapi. Changing behavior in that case so requests that went through splitting procedure will be fetched despite of partial failure to expand globs. Fixes go-graphite#545
After a way how carbonapi resolve IP addresses it was no longer possible to listen on `:8081` for example. Add a special case for that. Also improve error message when resolving failed Fixes go-graphite#600
Improve listening on `any` ip addresses
…g for unicode
Graphite metrics cannot contain certain symbols in the name, such as '(' or '"'.
Skip those symbols when unicode tables are used (without unicode it's a white-list of allowed)
Fixes go-graphite#598
Check if metric name doesn't contain disallowed characters if matchin…
Routine bump of everything that was updated upstream
5e19859 to
1040ede
Compare
1040ede to
21e13b0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.