Commit graph

11041 commits

Author SHA1 Message Date
Bryan Boreham 2b4c652e10
Merge pull request #369 from grafana/shard-func
* tsdb: make sharding function a parameter

Instead of relying on `labels.Hash()`, which may change, have the
caller pass in a shard function if required.

For most purposes `tsdb.Options.ShardFunc` is used, but the compactor
may be created independently so `NewLeveledCompactorWithChunkSize` also
takes a shard function parameter.

Regular Prometheus, which does not use block sharding, will have this
parameter as nil.

Rename WithCache functions as WithOptions

Where they now have 2 or more extra parameters.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2023-01-26 11:59:03 +00:00
George Krajcsovits 38af345dea
Merge pull request #403 from grafana/krajo/merge-upstream-main
merge upstream main 2023-01-25
2023-01-25 09:26:10 +01:00
György Krajcsovits e880b19c55 Merge remote-tracking branch 'upstream/main' into krajo/merge-upstream-main
At 9fb8fe0d4e
2023-01-25 08:53:49 +01:00
Björn Rabenstein 9fb8fe0d4e
Merge pull request #11881 from krajorama/histograms-resethint-in-remote-write
Fix storage/remote/codec ignoreing histogram reset hint
2023-01-24 21:08:11 +01:00
György Krajcsovits 2d9a9cbc08 Fix storage/remote/codec ignoreing histogram reset hint
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2023-01-24 12:56:30 +01:00
Oleg Zaytsev 904bda33fd
Merge pull request #402 from grafana/expose-prefix-of-the-matchers
Expose `Matcher.Prefix()`
2023-01-24 10:30:01 +01:00
Julien Pivotto d792f9c566
Merge pull request #11869 from bboreham/log-query-error
TestConcurrentRangeQueries: log query with error
2023-01-23 13:54:56 +01:00
Julien Pivotto 999be1d86a
Merge pull request #11872 from Borjianamin98/main
Promtool: add support of selecting timeseries for TSDB dump
2023-01-23 13:54:38 +01:00
Frederic Branczyk 8e21975949
Merge pull request #11870 from petergood/endpointslice-conditions
Add additional EndpointSlice conditions
2023-01-23 10:38:28 +01:00
Amin Borjian 90d6873c7f promtool: add support of selecting timeseries for TSDB dump
Dumping without any limit on the data being dumped will generate
a large amount of data. Also, sometimes it is necessary to dump
only a part of the data in order to change or transfer it.

This change allows to specify a part of the data to dump and
by default works same as before. (no public API change)

Signed-off-by: Amin Borjian <borjianamin98@outlook.com>
2023-01-20 15:46:23 +03:30
Julien Pivotto 64842f137e
Merge pull request #11871 from mmorel-35/patch-1
lint(yaml) : simplify ignore path for all github workflows
2023-01-20 11:01:31 +01:00
Matthieu MOREL 7063b47abb lint(yaml) : simplify ignore path for all github workflows
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-01-20 09:43:35 +01:00
Peter Nicholson bba95df0e9 Update documentation
Signed-off-by: Peter Nicholson <petergoods@hotmail.com>
2023-01-19 18:58:17 +01:00
Peter Nicholson 138a1362d8 Add support for EndpointSlice conditions
Signed-off-by: Peter Nicholson <petergoods@hotmail.com>
2023-01-19 18:56:02 +01:00
Oleg Zaytsev 2512c019d3 Expose Matcher.Prefix()
Sometimes label matchers know that they match values with a specific
prefix. This information can be valuable in some downstream storage
implementations.

Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com>
2023-01-19 17:21:28 +01:00
Bryan Boreham 9ae3572d24 TestConcurrentRangeQueries: log query with error
We've seen some timeouts in CI, and wanted to know what queries are
involved.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2023-01-19 16:01:28 +00:00
Peter Štibraný 44904a663c
Rename "execution time" to "evaluation time". (#401)
Signed-off-by: Peter Štibraný <pstibrany@gmail.com>
2023-01-19 15:11:44 +00:00
Peter Štibraný 806e71e828
Option to align rule group's evaluation time to interval (#400)
* Allow rule groups evaluation timestamp to be aligned on the evaluation interval.

Signed-off-by: Peter Štibraný <pstibrany@gmail.com>
2023-01-19 14:51:26 +01:00
Frederic Branczyk 9f91215bf6
Merge pull request #11844 from bawhetst/add-pod-container-id
discovery/kubernetes: add container ID as a meta label for pod targets
2023-01-17 19:19:22 +01:00
Ben Whetstone 52d5a7c60f Document the __meta_kubernetes_pod_container_id meta label
Signed-off-by: Ben Whetstone <ben.whetstone@sysdig.com>
2023-01-17 11:15:52 -05:00
George Krajcsovits fa6d2a8ede
Merge pull request #398 from grafana/krajo/merge-upstream-main
Update to prometheus/prometheus@e6f84d5

To get prometheus/prometheus#11856
2023-01-17 14:26:19 +01:00
Julien Pivotto c457dc48ae
Merge pull request #11745 from roidelapluie/promci
Switch to promci
2023-01-17 14:01:33 +01:00
György Krajcsovits cf4537a5f2 Merge remote-tracking branch 'upstream/main' into krajo/merge-upstream-main
At e6f84d5445
2023-01-17 13:42:29 +01:00
Ganesh Vernekar e6f84d5445
Merge pull request #11856 from codesome/mergecleanup
tsdb: Avoid unnecessary allocation from 11779
2023-01-17 17:31:37 +05:30
Ganesh Vernekar 6e560fe19b
tsdb: Avoid unnecessary allocation from 11779
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2023-01-17 16:53:49 +05:30
Bryan Boreham a1b10f0905
Merge pull request #11853 from bboreham/fixup-storage-test
package storage: fix up test not to access Labels internals
2023-01-17 09:55:10 +00:00
FG d44f63ec48
Merge pull request #395 from grafana/merge-jan-16-upstream
Merge Jan 16 from Upstream
2023-01-17 09:52:02 +00:00
Ganesh Vernekar 46a7a2c911
Merge pull request #11851 from jerry-shao/main
tsdb: Fixed typo in Histogram
2023-01-17 09:57:36 +05:30
Bryan Boreham faac4c066d package storage: fix up test not to access Labels internals
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2023-01-16 18:48:49 +00:00
Bryan Boreham b768247df8
Merge pull request #11760 from bboreham/discovery-log-setname
service discovery: add name to log messages
2023-01-16 17:57:47 +00:00
Bryan Boreham 75e5d600d9
Merge pull request #11748 from bboreham/safe-scrape
scrape: remove unsafe code
2023-01-16 17:57:12 +00:00
fayzal-g e320585436 Remove log 2023-01-16 17:47:03 +00:00
fayzal-g 026fcb2f86 Log failed query 2023-01-16 17:25:24 +00:00
fayzal-g d2ac103ba9 Remove comments 2023-01-16 15:49:49 +00:00
fayzal-g 7aef6e28fe Merge remote-tracking branch 'upstream/main' into merge-jan-16-upstream 2023-01-16 15:24:00 +00:00
Julien Pivotto a35e54cc56
Merge pull request #11786 from LeviHarrison/remove-nomad-datacenter-docs
Remove Nomad `datacenter` field in configuration docs
2023-01-16 14:42:40 +01:00
Mingjie Shao 78d3c4e823 tsdb: Fixed typo in Histogram
Signed-off-by: Mingjie Shao <com.jerryshao@jerryshao.com>
2023-01-16 18:13:45 +08:00
Ganesh Vernekar cb2be6e62f
Merge pull request #11779 from codesome/memseries-ooo
tsdb: Only initialise out-of-order fields when required
2023-01-16 10:58:05 +05:30
Jesus Vazquez 136956cca4
Attempt to append ooo sample at the end first (#11615)
This is an optimization on the existing append in OOOChunk.

What we've been doing so far is find the place inside the out-of-order
slice where the new sample should go in and then place it there and move
any samples to the right if necessary. This is OK but requires a binary
search every time the slice is bigger than 0.

The optimization is opinionated and suggests that although out-of-order
samples can be out-of-order amongst themselves they'll probably be in
order thus we can probably optimistically append at the end and if not
do the binary search.

OOOChunks are capped to 30 samples by default so this is a small
optimization but everything adds up, specially if you handle many active
timeseries with out-of-order samples.

Signed-off-by: Jesus Vazquez <jesus.vazquez@grafana.com>
Signed-off-by: Jesus Vazquez <jesusvazquez@users.noreply.github.com>
Co-authored-by: Ganesh Vernekar <ganeshvern@gmail.com>
2023-01-13 19:00:50 +05:30
Marc Tudurí 721f33dbb0
histograms: Add remote-write support for Float Histograms (#11817)
* adapt code.go and write_handler.go to support float histograms
* adapt watcher.go to support float histograms
* wip adapt queue_manager.go to support float histograms
* address comments for metrics in queue_manager.go
* set test cases for queue manager
* use same counts for histograms and float histograms
* refactor createHistograms tests
* fix float histograms ref in watcher_test.go
* address PR comments

Signed-off-by: Marc Tuduri <marctc@protonmail.com>
2023-01-13 16:39:20 +05:30
Ganesh Vernekar 72f20d949a
Merge pull request #11830 from codesome/histo-fed
Support native histograms in federation
2023-01-12 21:54:44 +05:30
Sebastian Rabenhorst c057318578
agent: native histogram support (#11842)
Signed-off-by: Sebastian Rabenhorst <sebastian.rabenhorst@shopify.com>
2023-01-12 11:13:44 -05:00
beorn7 d121db7a65
federate: Fix PeekBack usage
In most cases, there is no sample at `maxt`, so `PeekBack` has to be
used. So far, `PeekBack` did not return a float histogram, and we
disregarded even any returned normal histogram. This fixes both, and
also tweaks the unit test to discover the problem (by using an earlier
timestamp than "now" for the samples in the TSDB).

Signed-off-by: beorn7 <beorn@grafana.com>
2023-01-12 20:43:02 +05:30
Ganesh Vernekar b4e15899d1
docs: Update recording rule docs about native histograms
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2023-01-12 20:43:02 +05:30
Ganesh Vernekar 2e538be5d7
docs: Update federation docs for native histograms
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2023-01-12 20:43:02 +05:30
Ganesh Vernekar 7a88bc3581
Test federation with native histograms
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2023-01-12 20:43:02 +05:30
Ganesh Vernekar 33f880d123
Add native histogram support in federation
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2023-01-12 20:42:59 +05:30
Ganesh Vernekar 38fa151a7c
tsdb: Only initialise out-of-order fields when required
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2023-01-12 20:29:16 +05:30
Bryan Boreham 0bc8438f38 Rename WithCache functions as WithOptions
Where they now have 2 or more extra parameters.
2023-01-12 11:41:22 +00:00
Bryan Boreham 1aaabfee2d tsdb: make sharding function a parameter
Instead of relying on `labels.Hash()`, which may change, have the
caller pass in a shard function if required.

For most purposes `tsdb.Options.ShardFunc` is used, but the compactor
may be created independently so `NewLeveledCompactorWithChunkSize` also
takes a shard function parameter.

Regular Prometheus, which does not use block sharding, will have this
parameter as nil.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2023-01-12 11:41:22 +00:00