Commit graph

9554 commits

Author SHA1 Message Date
Bryan Boreham a278ea4b58
promql: copy data when short-circuiting (#9552)
* promql: copy data when short-circuiting

Because the range query loop re-uses the output buffer each time round,
we must copy results into the buffer rather than using input as output.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2021-10-20 16:03:02 +02:00
Vladimir Kononov 1043d2b594
Discovery: abstain from restarting providers if possible (#9321) (#9349)
* Abstain from restarting discovery providers if possible (#9321)

Signed-off-by: Vladimir Kononov <krya-kryak@users.noreply.github.com>
2021-10-20 10:16:20 +02:00
Julien Pivotto 432005826d
Add a feature flag to enable the new discovery manager (#9537)
* Add a feature flag to enable the new manager

This PR creates a copy of the legacy manager and uses it by default.

It is a companion PR to #9349. With this PR, users can enable the new
discovery manager and provide us with any feedback / side effects that
the new behaviour might have.

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-10-20 10:15:54 +02:00
Julien Pivotto 68bc92b520
uyuni: small fixes for comments (#9538)
* uyuni: small fixes for comments

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-10-19 23:38:44 +02:00
Julien Pivotto df1bae0514
Add support for security-related HTTP headers (#9546)
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-10-19 21:26:52 +02:00
Julien Pivotto 2a574bf8c2
Uyuni: enable HTTP2 again (#9539)
PR #9398 re-introduced HTTP2 in Prometheus. Uyuni SD can use the client
without disabling it.

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-10-19 21:26:39 +02:00
Olivier Lemasle 8858a276c2
Fix link to React App's README (#9532)
Signed-off-by: Olivier Lemasle <olivier.lemasle@apalia.net>
2021-10-19 12:08:00 -04:00
Julien Pivotto c812ee794e
PromQL: Comment flaky test (#9545)
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-10-19 13:13:56 +02:00
Witek Bedyk cda2dbbef6
Add Uyuni service discovery (#8190)
* Add Uyuni service discovery

Signed-off-by: Witek Bedyk <witold.bedyk@suse.com>

Co-authored-by: Joao Cavalheiro <jcavalheiro@suse.de>
Co-authored-by: Marcelo Chiaradia <mchiaradia@suse.com>
Co-authored-by: Stefano Torresi <stefano@torresi.io>
Co-authored-by: Julien Pivotto <roidelapluie@gmail.com>
2021-10-19 01:00:44 +02:00
Augustin Husson a4ad290987
remove old promql editor (#9452)
* remove old promql editor

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* rename CMExpression by Expression

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>
2021-10-18 17:22:23 +02:00
Augustin Husson 703d9bcd56
prepare the changelog for a next release of codemirror-promql (#9492)
Signed-off-by: Augustin Husson <husson.augustin@gmail.com>
2021-10-18 16:41:32 +02:00
Augustin Husson 08011925a1
update documentation around react-app (#9476)
* update documentation around react-app and how to upgrade the npm dependencies

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* wording around caution to take when updating the deps

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* fixing the npm version to be used and explain where you should perform the npm install command

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* simplify what is required to build prometheus from the source

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* aligned period and removed redondant word installed

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* set nodeJS version to be used at 16

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* describe manuel steps to update a dependency for the react-app

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* rewording of the manuel step to update the dependencies

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>
2021-10-18 12:47:31 +02:00
jessicagreben 60d0990886 add more explicit label values
Signed-off-by: jessicagreben <jessicagrebens@gmail.com>
2021-10-18 01:04:13 +02:00
jessicagreben 3da87d2f39 add unit test to check label rule labels override
Signed-off-by: jessicagreben <jessicagrebens@gmail.com>
2021-10-18 01:04:13 +02:00
Julien Pivotto f8372bc6b9 backfill: Apply rule labels after query labels
Fix #9419

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-10-18 01:04:13 +02:00
Julien Pivotto a18224d02d
make aggregations deterministic (#9459)
* Add deterministic test for aggregations

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>

* Make aggregations deterministic

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>

* Increase testing

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-10-17 15:16:38 +05:30
Björn Rabenstein 94a9156cc4
Merge pull request #9518 from prometheus/beorn7/labels
scrape: Avoid creating a label map during conflict resolution
2021-10-16 21:22:08 +02:00
Paweł Szulik 4414351576
web api: Delete unnecessary conversion. (#9517) 2021-10-15 18:41:53 -04:00
beorn7 b8d953a5a0 scrape: Avoid creating a label map during conflict resolution
This also avoids the recursive function call. I think it is quite
readable. And much less code.

Signed-off-by: beorn7 <beorn@grafana.com>
2021-10-15 21:56:48 +02:00
Shirley Leu c890ea407f
Resolve conflicts between multiple exported label prefixes (#9479)
Resolve conflicts between multiple exported label prefixes

Signed-off-by: Shirley Leu <shirley.w.leu@gmail.com>
2021-10-15 20:31:03 +02:00
Howie 4e1dacf2d1
fix issue #9432(uses reference to loop iterator variable ) (#9483) 2021-10-15 14:24:55 -04:00
ziollek 55f9147b44
Add atan2 to scalar operators - issue #9485 (#9515)
* Add atan2 to scalar operators

Signed-off-by: Tomasz Ziolkowski <tomasz.ziolkowski@allegro.pl>
2021-10-15 16:03:11 +02:00
Ben Ye fdbc40a9ef
Expose NewChainSampleIterator func (#9475)
* expose NewChainSampleIterator func

Signed-off-by: Ben Ye <ben.ye@bytedance.com>

* add comment

Signed-off-by: Ben Ye <ben.ye@bytedance.com>

* update comments

Signed-off-by: Ben Ye <ben.ye@bytedance.com>
2021-10-14 14:49:00 +05:30
tclayton-newr e261eccb35
added doc for changed metric name in remote write (#9480)
* added doc for changed metric name in remote write

Signed-off-by: Tyler Clayton <tclayton@newrelic.com>
2021-10-14 00:12:54 +02:00
Marco Pracucci fbd1b4fb84
Merge pull request #21 from grafana/reuse-expand-postings-method-in-new-postings-cloner
Use `ExpandPostings()` in `NewPostingsCloner()`
2021-10-13 17:01:24 +02:00
Oleg Zaytsev 14cb8d8696
Use ExpandPostings() in NewPostingsCloner()
We should reuse that method, not only because it saves code, but also
because that method is a good candidate to use a pool of slices some
day.

Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com>
2021-10-13 15:26:36 +02:00
Dieter Plaetinck d5afe0a577
TSDB: Use a dedicated head chunk reference type (#9501)
* Use dedicated Ref type

Throughout the code base, there are reference types masked as
regular integers.  Let's use dedicated types.  They are
equivalent, but clearer semantically.
This also makes it trivial to find where they are used,
and from uses, find the centralized docs.

Signed-off-by: Dieter Plaetinck <dieter@grafana.com>

* postpone some work until after possible return

Signed-off-by: Dieter Plaetinck <dieter@grafana.com>

* clarify

Signed-off-by: Dieter Plaetinck <dieter@grafana.com>

* rename feedback

Signed-off-by: Dieter Plaetinck <dieter@grafana.com>

* skip header is up to caller

Signed-off-by: Dieter Plaetinck <dieter@grafana.com>
2021-10-13 17:44:32 +05:30
Frederic Branczyk 054fc4ba19
Merge pull request #9467 from katsadim/endpointsliceovercapacity
discovery/kubernetes: Warn user in case of endpoint over-capacity
2021-10-13 10:57:23 +02:00
Björn Rabenstein 9486be535b
Add deprecation notice for the pkg directory (#9477)
As per consensus expressed on the dev summit:
https://docs.google.com/document/d/11LC3wJcVk00l8w5P3oLQ-m3Y37iom6INAMEu2ZAGIIE/edit?pli=1#heading=h.80qrixk0sjgv

Signed-off-by: beorn7 <beorn@grafana.com>
2021-10-12 10:54:12 +02:00
Julien Pivotto e245edf5a4
Fix Levi's name in MAINTAINERS.md (#9491)
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-10-12 02:05:22 +02:00
Björn Rabenstein 354d8d2ecf
Merge pull request #9488 from prometheus/beorn7/release
Volunteer @roidelapluie and @juliusv as upcoming release shepherds
2021-10-11 19:14:44 +02:00
Julien Pivotto 81cb67eb95
Add Levi as maintainer (#9487)
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-10-11 17:46:59 +02:00
beorn7 810c1081cf Volunteer @roidelapluie and @juliusv as upcoming release shepherds
Signed-off-by: beorn7 <beorn@grafana.com>
2021-10-11 17:14:32 +02:00
Marco Pracucci 8bc1b41795
Merge pull request #20 from grafana/test-approxBytesPerEntry-is-correct
Test that approxBytesPerEntry const is correct
2021-10-11 15:42:38 +02:00
Oleg Zaytsev 3dd18a1ece
Test that approxBytesPerEntry const is correct
The comment on the constant mentions where it comes from, so we can
actually check its value in that test.

Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com>
2021-10-11 15:15:56 +02:00
Cyril Tovena 62935a1241
Merge pull request #19 from grafana/regexpopti
Optimize most common regexp
2021-10-11 14:15:51 +02:00
Cyril Tovena 01187fbce2
Review feedback
Signed-off-by: Cyril Tovena <cyril.tovena@gmail.com>
2021-10-11 13:59:24 +02:00
Cyril Tovena c8dfba9fa4
Add better comments
Signed-off-by: Cyril Tovena <cyril.tovena@gmail.com>
2021-10-11 13:56:22 +02:00
Cyril Tovena d41e470693
Update pkg/labels/regexp.go
Co-authored-by: Marco Pracucci <marco@pracucci.com>
2021-10-11 11:13:53 +02:00
Cyril Tovena 37416bf907
Update pkg/labels/regexp.go
Co-authored-by: Marco Pracucci <marco@pracucci.com>
2021-10-11 11:09:55 +02:00
Cyril Tovena 5c5b38712f
Add more comments.
Signed-off-by: Cyril Tovena <cyril.tovena@gmail.com>
2021-10-11 10:10:51 +02:00
Cyril Tovena 9c33f392e6
Better benchmarks values.
```
❯ benchcmp  before.txt after.txt
benchmark                                                           old ns/op     new ns/op     delta
BenchmarkNewFastRegexMatcher/(foo|bar)-16                           2487          2520          +1.33%
BenchmarkNewFastRegexMatcher/foo.*-16                               8856          4531          -48.84%
BenchmarkNewFastRegexMatcher/.*foo-16                               25195         6389          -74.64%
BenchmarkNewFastRegexMatcher/^.*foo$-16                             25626         6253          -75.60%
BenchmarkNewFastRegexMatcher/^.+foo$-16                             25429         6248          -75.43%
BenchmarkNewFastRegexMatcher/.*-16                                  429707        8439          -98.04%
BenchmarkNewFastRegexMatcher/.+-16                                  380165        8503          -97.76%
BenchmarkNewFastRegexMatcher/foo.+-16                               8180          4586          -43.94%
BenchmarkNewFastRegexMatcher/.+foo-16                               25214         6255          -75.19%
BenchmarkNewFastRegexMatcher/foo_.+-16                              8116          4334          -46.60%
BenchmarkNewFastRegexMatcher/foo_.*-16                              8354          4287          -48.68%
BenchmarkNewFastRegexMatcher/.*foo.*-16                             206076        19227         -90.67%
BenchmarkNewFastRegexMatcher/.+foo.+-16                             208434        18793         -90.98%
BenchmarkNewFastRegexMatcher/#00-16                                 33045         3936          -88.09%
BenchmarkNewFastRegexMatcher/(?s:.*)-16                             403806        4208          -98.96%
BenchmarkNewFastRegexMatcher/(?s:.+)-16                             418177        4150          -99.01%
BenchmarkNewFastRegexMatcher/(?s:^.*foo$)-16                        24452         5661          -76.85%
BenchmarkNewFastRegexMatcher/^(?i:foo|oo)|(bar)$-16                 48087         23183         -51.79%
BenchmarkNewFastRegexMatcher/((.*)(bar|b|buzz)(.+)|foo)$-16         645430        47193         -92.69%
BenchmarkNewFastRegexMatcher/^$-16                                  37244         3912          -89.50%
BenchmarkNewFastRegexMatcher/(prometheus|api_prom)_api_v1_.+-16     17205         10006         -41.84%
BenchmarkNewFastRegexMatcher/10\.0\.(1|2)\.+-16                     6776          7011          +3.47%
BenchmarkNewFastRegexMatcher/10\.0\.(1|2).+-16                      14792         4674          -68.40%
BenchmarkNewFastRegexMatcher/((fo(bar))|.+foo)-16                   497007        17410         -96.50%
```

Signed-off-by: Cyril Tovena <cyril.tovena@gmail.com>
2021-10-11 09:45:02 +02:00
akatsadimas ee77a6212f discovery/kubernetes: issue overcapacity warning for endpoint rather than endpointslice
Signed-off-by: akatsadimas <nkatsadim@gmail.com>
2021-10-08 23:17:04 +03:00
Cyril Tovena 715274ec9d
Reintroduce tests.
Signed-off-by: Cyril Tovena <cyril.tovena@gmail.com>
2021-10-08 10:10:18 +02:00
Cyril Tovena 7dab60e56d
More optimization.
Signed-off-by: Cyril Tovena <cyril.tovena@gmail.com>
2021-10-07 17:15:20 +02:00
Christian Simon 50c1060328
Implement PostingsCloner and implement promise/future pattern for PostingsForMatchers (#14)
* Fix tests not closing head/block properly

Close Head properly in TestWalRepair_DecodingError
Close Block properly in  TestReadIndexFormatV1

Co-authored-by: Christian Simon <simon@swine.de>
Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com>

* Implement PostingsCloner

PostingsCloner allows obtaining independend clones of a Postings, that
can be used for subsequent calls.

Co-authored-by: Christian Simon <simon@swine.de>
Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com>

* IndexReader.PostingsForMatchers() and implement Cache

IndexReader now offers the PostingsForMatchers functionality, which is
provided by PostingsForMatchersCache.

Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com>
Co-authored-by: Marco Pracucci <marco@pracucci.com>
Co-authored-by: Peter Štibraný <peter.stibrany@grafana.com>

Co-authored-by: Oleg Zaytsev <mail@olegzaytsev.com>
Co-authored-by: Marco Pracucci <marco@pracucci.com>
Co-authored-by: Peter Štibraný <peter.stibrany@grafana.com>
2021-10-07 15:16:09 +02:00
Cyril Tovena 852b553c00
Fixes the code and improve tests.
Signed-off-by: Cyril Tovena <cyril.tovena@gmail.com>
2021-10-07 15:10:26 +02:00
Cyril Tovena 9173cade01
Merge pull request #15 from grafana/improvesetmatches
Improve `findSetMatches `to support concatenation.
2021-10-07 14:48:53 +02:00
Marco Pracucci 23ac1d73ef
Fixed timeout increase
Signed-off-by: Marco Pracucci <marco@pracucci.com>
2021-10-07 14:35:55 +02:00
Marco Pracucci 7aea989fad
Increase tests timeout
Signed-off-by: Marco Pracucci <marco@pracucci.com>
2021-10-07 14:26:46 +02:00