Releases: go-graphite/carbonapi
Releases · go-graphite/carbonapi
v0.17.0
What's Changed
- [Feature] return error on partial targets fetch by @msaf1980 in #814
- [Feature] add a config option to pass consolidateBy to the storage backend by @mchrome in #830
- [Feature] add -exact-config command line argument by @mchrome in #819
- [Improvement]
‼️ refactor for avoid global evaluator usage by @msaf1980 in #818 - [Improvement] Add movingWindow to list of functions that might adjust timerange by @shanson7 in #841
- [Improvement] tags/autoComplete: return detailed error code instead of 500 by @msaf1980 in #826
- [Improvement] MaxDataPoints consolidation: support nudging for consistent bucketing by @npazosmendez in #842
- [Fix] incorrect positional parameters by @guidao in #800
- [Fix] transformNull name tag by @msaf1980 in #801
- [Fix] Deadlock on uninitialized (nil) limiter by @msaf1980 in #805
- [Fix] Check if query doesn't exceed allowed length limit by @mchrome in #817
- [Fix] return code for render_handler by @Thorsieger in #789
- [Fix] gracefully shutdown http servers by @mchrome in #824
- [Fix] sortBy: substitute NaN values for negative infinity by @mchrome in #832
- [Fix] validate consolidateBy arguments by @mchrome in #834
- [Fix] fix
"name"
tag overrides in various functions by @npazosmendez in #838 - [Fix] runtime error highest current by @AleksandrMatsko in #837
- [Fix] PromethizeTagValue panic on empty value by @artem1996 in #833
New Contributors
- @guidao made their first contribution in #800
- @dowster made their first contribution in #807
- @mchrome made their first contribution in #817
- @Thorsieger made their first contribution in #789
- @syatihoko made their first contribution in #827
- @AleksandrMatsko made their first contribution in #837
- @tbauriedel made their first contribution in #839
- @artem1996 made their first contribution in #833
- @shanson7 made their first contribution in #841
Full Changelog: v0.16.1...v0.17.0
v0.16.1
- [Build] Update build version of golang to 1.21.0
- [Improvement] Better error messages
- [Improvement] Implement /metrics/expand API
- [Improvement] Implement aliasQuery
- [Fix] aliasByNode/Tag should not disacrd tags anymore
- [Fix] VicotriaMetrics cluster now should support autocomplete for tags
- [Fix] ConstantSeries should now work as in graphite-web
- [Fix] Fix logic of hitcount function (should behave like in graphite-web)
- [Fix] alignToInterval should work well in hitcount function
- [Fix] smartSummarize should handle stop time properly
- [Fix] smartSummarize should now handle alignTo properly
- [Fix] smartSummarize should handle consolidation functiosn better
- [Fix] summarize should work as in graphite-web for functions that have only NaN values
- [Fix] toUpper and toLower now should work correctly with function names
- [Fix] Skip all whitespace during expression parsing
- [Fix] time units now case insensitive
- [Fix] use specified bootstrapInterval to adjust start time in holtWinters* class of functions
- [Fix] groupByNode should return exepcted amount of series
- [Fix] multiple fixes for exponentialMovingAverage
- [Fix] holtWinters supports seasonality argument
- [Fix] fix holtWintersAbberation behavior
- [Fix] fix behavior of Below function
- [Fix] fix sin and exp functions (description was not accurate or correct)
v0.16.0-patch2
[Build] Updating latest docker image
v0.16.0-patch1
[Build] Proper semver version for docker
v0.16.0
- [Improvement] Deprecate and remove carbonzipper binary (thx to @msaf1980)
- [Improvement] Remove deprecated carbonsearch support
- [Improvement] Refactor HTTP client (used to talk to databases) to properly do keepAlive and respect specified amount of connections
- [Improvement] HTTP client should now support mTLS checking
- [Improvement] Listeners now support TLS (including mTLS)
- [Improvement] Update all vendored libraries to their latest stable version
- [Code] fix various panics in tags and use copy tags to avoid mutating input (thx to @npazosmendez)
- [Feature] Port
join
function from Avito carbonapi fork (https://github.com/el-yurchito/carbonapi/commit/bccdb90a90492314c18696eb4f064b818c5fff70 and https://github.com/el-yurchito/carbonapi/commit/47177771d60b7af0f5ac865634ecf3d1c3aa2802) - [Feature] Implement exp() function (thx to @carrieedwards)
- [Feature] Implement logit() function (thx to @carrieedwards)
- [Feature] Implement unique() function (thx to @carrieedwards)
- [Feature] Implement sinFunction() function (thx to @carrieedwards)
- [Feature] Implement legendValue() function (thx to @carrieedwards)
- [Feature] Implement aggregateWithWildcards() function (thx to @carrieedwards)
- [Feature] Implement powSeries() function (thx to @leizor)
- [Feature] Implement averageOutsidePercentile() function (thx to @carrieedwards)
- [Feature] Implement sigmoid() function (thx to @carrieedwards)
- [Feature] Support for xFilesFactor and setXFilesFactor (thx to @carrieedwards)
- [Feature] Implement removeBetweenPercentile() function (thx to @carrieedwards)
- [Feature] Implement identity() function (thx to @carrieedwards)
- [Feature] Implement minMax() function (thx to @carrieedwards)
- [Feature] Implement aggregateSeriesLists() function (thx to @leizor)
- [Feature] Implement movingWindow() function (thx to @carrieedwards)
- [Feature] Implement exponentialMovingAverage() function (thx to @carrieedwards)
- [Feature] Implement verticalLine() function (thx to @leizor)
- [Feature] Implement toLowerCase() function (thx to @carrieedwards)
- [Feature] Implement toUpperCase() function (thx to @carrieedwards)
- [Feature] Implement sumSeriesLists() function (thx to @carrieedwards)
- [Feature] Implement compressPeriodicGaps() function (thx to @carrieedwards)
- [Feature] Implement holtWintersConfidenceArea() function (thx to @carrieedwards)
- [Fix] Numerous compatibility fixes for functions, mostly for graphite-web compatibility (thx to @carrieedwards and @npazosmendez, @msaf1980)
- [Fix] Refactor scaling and re-aligning series (thx to @msaf1980)
- [Fix] Fix logic that extracts names when metric name contains non-ascii characters (thx to @msaf1980)
- [Fix] Parser now accepts escaped characters
- [Fix] IronDB adjuststep logic now works properly
- [Fix] Fix tag extractions in seriesByTag (thx to @msaf1980)
- [Fix] Fix tag handling in nested functions (thx to @carrieedwards)
v0.15.6
v0.15.5
v0.15.5
- [Security] Update vendored dependency for GoGo Proto that should fix improper index validation (CVE-2021-3121)
- [Feature] carbonapi supports
-check-config
flag just to run config validation (thx to @msaf1980) - [Feature] 2-level cache lifetime support (see docs for more information) (thx to @msaf1980)
- [Feature] Support IronDB backend (thx to @deniszh)
- [Improvement] Debug logs should now log a bit more information about metrics
- [Improvement] Better performance for metrics/find on relatively new VictoriaMetrics (thx to @iklfst)
- [Improvement] Add support for Cluster Tenant ID for VictoriaMetrics backend (thx to @iklfst)
- [Fix] asPercent handles empty values correctly (thx to @msaf1980)
- [Fix] Cairo functions supports context passing now (thx to @faceair)
- [Fix] Handling multi-fetch request parameters for VictoriaMetrics backend respects start & stop Time as well as step for every metric (thx to @alexey-mylnkov)
- [Fix] Fix a bug in removeEmptySeries
- [Fix] Properly pass step to VictoriaMetrics (thx to @tantra35)
- [Fix] Fix substr function to behave in a way like graphite-web
- [Fix] timeShift properly hanldes resetEnd parameter (thx to @msaf1980)
- [Fix] Fix
moving*
to work properly when step is greater than window size (thx to @jonasbleyl) - [Fix] Pass request UUID as header (thx to @msaf1980)
- [Fix]
groupByNode(s)
supports negative node indecies (thx to @Felixoid)
v0.15.4
- [Fix] zipper requests net error (encapsulated) (thx to @msaf1980)
- [Fix] preserve original points for some functions (thx to @msaf1980)
- [Fix] aliasByNode: strip function in name (thx to @msaf1980)
- [Improvement] build: allow to replace fpm with cli-compability program (thx to @msaf1980)
- [Improvement] build: equal version for carbonapi/carbonzipper package (thx to @msaf1980)
0.15.3
- [Fix] Time parsing is now closer to how graphite do it
- [Fix] Aggregation functions now scale input to common step (thx to @Felixoid)
- [Fix] Fix the way how partialy retrived requests that had globs were handled
- [Fix] Fix resolver to accept
0.0.0.0
and[::]
as valid addresses for listeners - [Fix] Handling of unicode characters when common table is added.
- [Fix] AlignVluaes in Prometheus and VictoriaMetrics backends shouldn't drop last value (thx to @limpasha)
- [Fix] maxDataPoints should be passed to Prometheus and VictoriaMetrics\
- [Fix] Various packaging problems (e.x. logrotate) (thx to @deniszh)
- [Improvement] xFilesFactor support in SUmmarizeValues
- [Improvement] Port functions that were implemented in avito's fork of carbonapi (aliasByHash, lowestMin, highestMin, integralWithReset and much more): 322dae5 for the diff for COMPATIBILITY.md file
- [Improvement] Refactor error handling (thx to @msaf1980)
- [Improvement] Default systemd unit should drop privileges (thx to @deniszh)
- [Improvement] Enable cairo support for docker images (thx to @deniszh)
0.15.2
- [Fix] Honor isLeaf attribute in replies (makes possible to have metric called "metric.foo" and metric called "metric.foo.bar" and see both in find queries (thx to @tantra35)
- [Fix] Fix bootstrapInterval paramter handling in holtWinters functions
- [Fix] Fix potential panics when metirc do not have required amount of data for
holtWinters
functions - [Fix] Fix panics with several functions if they are applied before
alias
function (mostlyholtWinter
functions)