Bryan Boreham
12961c6a37
promql: refactor: eliminate one 'else'
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
0ac927515b
promql: move group-seen into group struct
...
Save allocating an auxilliary array.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
7499d90913
promql: remove pointer to aggregation groups
...
Just allocate in one slice.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
cfbeb6681b
promql: re-use one heap for topk and bottomk
...
Slightly ugly casting saves memory.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
5e3914a27c
promql: remove histogramMean from groupedAggregation
...
Re-use histogramValue since we don't need them separately.
Tidy up initialization.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
2cf3c9de8f
promql: store labels per-group only for count_values
...
This saves memory in other kinds of aggregation.
We don't need `orderedResult` in `aggregationCountValues`; the ordering
is not guaranteed.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
185290a0d2
promql: pull checking of q and k out of loop
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
4584f67e17
promql: inline nextSample function
...
Move Sample out of loop to reduce allocations, otherwise it escapes to
the heap.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
526ce4ee7a
promql: simplify data collection in aggregations
...
We don't need a Sample, just the float and histogram values.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
2f03acbafc
promql: refactor: split topk/bottomk from sum/avg/etc
...
They aggregate results in different ways.
topk/bottomk don't consider histograms so can simplify data collection.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
74eed67ef6
promql: refactor: pull fetching input data out of rangeEvalAgg
...
This is a cleaner split of responsibilities.
We now check the sample count after calling rangeEvalAgg.
Changed re-use of samples to use `Clone` and `defer`.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
602eb69edf
promql: refactor: extract function nextSample
...
With sub-function nextValues which we shall use shortly.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
eb41e770b7
promql: refactor: extract function addToSeries
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
53a3138eeb
promql aggregations: pre-generate mapping from inputs to outputs
...
So we don't have to re-create it on every time step.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
cb6c4b3092
promql: simplify k/q parameter to topk/bottomk/quantile
...
Pass it as a float64 not as interface{}.
Make k a simple int, since that is the parameter to make().
Pull invalid quantile warning out of the loop.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
b3bda7df4b
promql: aggregations: skip copying input to a Vector
...
We can work directly from the inputMatrix on each timestep.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
c9b6c4c55a
promql: aggregations: output directly to matrix for instant queries
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
3851b74db1
promql: aggregations: skip result vector in range queries
...
Adjust test to match the lower count, since samples in the vector
are no longer counted.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
59548b8a0b
promql: refactor: move collection of results into aggregation()
...
We don't need to check for duplicates as aggregation cannot generate them.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
bd9bdccb22
promql: refactor: simplify internal data structures
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
5f10d17cef
promql: refactor: split out aggregations over range
...
The new function `rangeEvalAgg` is mostly a copy of `rangeEval`, but
without `initSeries` which we don't need and inlining the callback to
`aggregation()`.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
e5f667537c
promql: refactor: initialize aggregation before storing in map
...
This seems more consistent to me.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
29244fb841
promql: refactor: extract count_values implementation
...
The existing aggregation function is very long and covers very different
cases.
`aggregationCountValues` is just for `count_values`, which differs from
other aggregations in that it outputs as many series per group as there
are values in the input.
Remove the top-level switch on string parameter type; use the same `Op`
check there as elswehere.
Pull checking parameters out to caller, where it is only executed once.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
8e04ab6dd4
promql: refactor: extract generateGroupingLabels function
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
David Ashpole
bbfc72b4e2
support unregistering discovery manager metrics ( #13896 )
...
Signed-off-by: David Ashpole <dashpole@google.com>
8 months ago
Julien
8b72ed77f8
Merge pull request #13869 from prometheus/dependabot/go_modules/go-opentelemetry-io-1393210b43
...
build(deps): bump the go-opentelemetry-io group with 3 updates
8 months ago
Julien
8eb9228af8
Merge pull request #13864 from yeya24/expose-compactor-metrics
...
Expose compactor metrics
8 months ago
Julien
48c8ec19bc
Merge pull request #13882 from prometheus/update-featureflag-docs
...
Update documentation about existing feature-flags
8 months ago
dandrucz
38b75bc0d7
Linode IPv6 Range support, Optional region filtering, Missing fields in Documentation fixed ( #13774 )
...
* Add support for discovering Linode IPv6 ranges associated with linodes.
* Add optional but recommended region filtering (faster queries, more relevant information).
* Added missing fields in configuration.md, updated linode test cases.
* Convert to TableDrivenTests as per tjhop request.
Signed-off-by: David Andruczyk <dandrucz@akamai.com>
8 months ago
Jonathan Halterman
113938aeb8
Log out of order when writing a block ( #13888 )
...
Signed-off-by: Jonathan Halterman <jonathan@grafana.com>
8 months ago
Bryan Boreham
8799581b24
Merge pull request #13554 from machine424/k8s-failures
...
discovery(k8s): add metric prometheus_sd_kubernetes_failures_total
8 months ago
Bryan Boreham
31491eb37c
Merge pull request #13885 from bboreham/readable-test
...
[TESTS] Truncate some long test names, for readability
8 months ago
Bryan Boreham
7c28521451
[TESTS] Truncate some long test names, for readability
...
The strings produced by these tests can run to thousands of characters,
which makes test logs difficult to read.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Charles Korn
cd72ebb05f
promql: include more details in error message when creating test query fails or an unexpected series is returned ( #13847 )
...
* promql: include more details in error message when creating test query fails
Signed-off-by: Charles Korn <charles.korn@grafana.com>
* Include more details when an unexpected metric is returned
Signed-off-by: Charles Korn <charles.korn@grafana.com>
---------
Signed-off-by: Charles Korn <charles.korn@grafana.com>
8 months ago
Nicolas Takashi
8125634086
[refactor] moving mergedOOOChunks Iterator ( #13881 )
...
Signed-off-by: Nicolas Takashi <nicolas.tcs@hotmail.com>
8 months ago
Arthur Silva Sens
db64d2dcdc
Update documentation about existing feature-flags
...
Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>
8 months ago
Julius Volz
9b7de47787
Remove unused Dmn field on EvalNodeHelper ( #13877 )
...
https://github.com/prometheus/prometheus/pull/13446 removed the last usage of
this field, but didn't remove the field.
Signed-off-by: Julius Volz <julius.volz@gmail.com>
8 months ago
dependabot[bot]
2e6c1c35a4
build(deps): bump the go-opentelemetry-io group with 3 updates
...
Bumps the go-opentelemetry-io group with 3 updates: [go.opentelemetry.io/collector/featuregate](https://github.com/open-telemetry/opentelemetry-collector ), [go.opentelemetry.io/collector/pdata](https://github.com/open-telemetry/opentelemetry-collector ) and [go.opentelemetry.io/collector/semconv](https://github.com/open-telemetry/opentelemetry-collector ).
Updates `go.opentelemetry.io/collector/featuregate` from 1.3.0 to 1.4.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-collector/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-collector/blob/main/CHANGELOG-API.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-collector/compare/pdata/v1.3.0...pdata/v1.4.0 )
Updates `go.opentelemetry.io/collector/pdata` from 1.3.0 to 1.4.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-collector/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-collector/blob/main/CHANGELOG-API.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-collector/compare/pdata/v1.3.0...pdata/v1.4.0 )
Updates `go.opentelemetry.io/collector/semconv` from 0.96.0 to 0.97.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-collector/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-collector/blob/main/CHANGELOG-API.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-collector/compare/v0.96.0...v0.97.0 )
---
updated-dependencies:
- dependency-name: go.opentelemetry.io/collector/featuregate
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/collector/pdata
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/collector/semconv
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
...
Signed-off-by: dependabot[bot] <support@github.com>
8 months ago
Augustin Husson
9e2c335bab
Merge pull request #13855 from prometheus/merge-2.51-into-main
...
Merge 2.51.1 into main
8 months ago
carehabit
a672662073
all: fix some typos ( #13863 )
...
Signed-off-by: carehabit <shenyuting@outlook.com>
8 months ago
Bryan Boreham
5e2caa32e7
Merge pull request #13856 from bboreham/release-ci-needs
...
CI: Publish step should require all Go tests to pass
8 months ago
Ben Ye
ded35ef20d
expose compactor metrics
...
Signed-off-by: Ben Ye <benye@amazon.com>
8 months ago
Arthur Silva Sens
b51bbdd7ad
Merge pull request #13862 from nicolastakashi/refactor/moving-mergedOOOChunks-struct
...
[refactor] moving mergedOOOChunks to ooo_head_read
8 months ago
Nicolas Takashi
79d6750364
Merge branch 'prometheus:main' into refactor/moving-mergedOOOChunks-struct
8 months ago
Nicolas Takashi
0b762db154
[refactor] moving mergedOOOChunks to ooo_head_read
...
Signed-off-by: Nicolas Takashi <nicolas.tcs@hotmail.com>
8 months ago
Arthur Silva Sens
6a66f1f579
Merge pull request #13859 from prometheus/beorn7/release
...
Appoint release shepherds for v2.52 and v2.53
8 months ago
beorn7
fc3ad66539
Appoint release shepherds for v2.52 and v2.53
...
Note that we have delayed v2.52 by a week to avoid collisions with
events and travels.
Signed-off-by: beorn7 <beorn@grafana.com>
8 months ago
Björn Rabenstein
d81e41d58e
Merge pull request #13854 from prometheus/beorn7/testing
...
promql: Fix histogram comparison in test framework
8 months ago
Bryan Boreham
255098e053
CI: Publish step should require all Go tests to pass
...
This was an unintentional effect of splitting out Go tests into multiple
parallel blocks.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago
Bryan Boreham
e1a5886c88
Merge branch 'main' into merge-2.51-into-main
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
8 months ago