Commit Graph

9177 Commits

Author SHA1 Message Date
Bryan Boreham
040ef175eb
Optimise WAL loading by removing extra map and caching min-time (#9160)
* BenchmarkLoadWAL: close WAL after use

So that goroutines are stopped and resources released

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>

* BenchmarkLoadWAL: make series IDs co-prime with #workers

Series are distributed across workers by taking the modulus of the
ID with the number of workers, so multiples of 100 are a poor choice.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>

* BenchmarkLoadWAL: simulate mmapped chunks

Real Prometheus cuts chunks every 120 samples, then skips those samples
when re-reading the WAL. Simulate this by creating a single mapped chunk
for each series, since the max time is all the reader looks at.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>

* Fix comment

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>

* Remove series map from processWALSamples()

The locks that is commented to reduce contention in are now sharded
32,000 ways, so won't be contended. Removing the map saves memory and
goes just as fast.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>

* loadWAL: Cache the last mmapped chunk time

So we can skip calling append() for samples it will reject.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>

* Improvements from code review

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>

* Full stops and capitals on comments

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>

* Cache max time in both places mmappedChunks is updated

Including refactor to extract function `setMMappedChunks`, to reduce
code duplication.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>

* Update head min/max time when mmapped chunks added

This ensures we have the correct values if no WAL samples are added for
that series.

Note that `mSeries.maxTime()` was always `math.MinInt64` before, since
that function doesn't consider mmapped chunks.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2021-08-10 14:53:31 +05:30
Bryan Boreham
7407457243
Avoid deadlock when processing duplicate series record (#9170)
* Avoid deadlock when processing duplicate series record

`processWALSamples()` needs to be able to send on its output channel
before it can read the input channel, so reads to allow this in case the
output channel is full.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>

* processWALSamples: update comment

Previous text seems to relate to an earlier implementation.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2021-08-10 13:32:42 +05:30
Levi Harrison
fac1b57334
Remove Individual Data Type Caps in Per-shard Buffering for Remote Write (#8921)
* Moved everything to nPending buffer

Signed-off-by: Levi Harrison <git@leviharrison.dev>

* Simplify exemplar capacity addition

Signed-off-by: Levi Harrison <git@leviharrison.dev>

* Added pre-allocation

Signed-off-by: Levi Harrison <git@leviharrison.dev>

* Don't allocate if not sending exemplars

Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-08-09 15:20:53 -06:00
Julien Pivotto
5083f4ee42
Merge pull request #9177 from roidelapluie/fixlinks229
Rename links
2021-08-09 13:56:55 +02:00
Levi Harrison
0d7eb73d92 Rename links
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-08-09 13:01:10 +02:00
Julien Pivotto
e8663a4eac
Merge pull request #9167 from LeviHarrison/rename-disabled-features-links
Update more "Disabled Features" links to new name
2021-08-09 13:00:23 +02:00
Frederic Branczyk
240235f36a
Merge pull request #9171 from brancz/cut-2.29.0-rc.2
*: cut v2.29.0-rc.2
2021-08-09 08:29:01 +02:00
Frederic Branczyk
77d3f3722e
*: cut v2.29.0-rc.2
Signed-off-by: Frederic Branczyk <fbranczyk@gmail.com>
2021-08-07 17:40:46 +02:00
Levi Harrison
b9b5adfe62 Rename links
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-08-06 21:54:44 -06:00
Ganesh Vernekar
ee7e0071d1
Snapshot in-memory chunks on shutdown for faster restarts (#7229)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-08-06 17:51:01 +01:00
Frederic Branczyk
1f3df4b81a
Merge pull request #9161 from roidelapluie/kuma-rel229
Fix `kuma_sd` targetgroup reporting (#9157)
2021-08-06 09:00:25 +02:00
Austin Cawley-Edwards
39a8db22eb Fix kuma_sd targetgroup reporting (#9157)
* Bundle all xDS targets into a single group

Signed-off-by: austin ce <austin.cawley@gmail.com>
2021-08-06 01:29:51 +02:00
Austin Cawley-Edwards
5df37892aa
Fix kuma_sd targetgroup reporting (#9157)
* Bundle all xDS targets into a single group

Signed-off-by: austin ce <austin.cawley@gmail.com>
2021-08-06 01:29:15 +02:00
Frederic Branczyk
b86bdddb8c
Merge pull request #9154 from brancz/cut-2.29.0-rc.1
*: Cut v2.29.0-rc.1
2021-08-04 15:00:58 +02:00
Frederic Branczyk
868776b4d0
*: Cut v2.29.0-rc.1
Signed-off-by: Frederic Branczyk <fbranczyk@gmail.com>
2021-08-04 14:18:45 +02:00
TJ Hoplock
7baf084092
optimize Linode SD by polling for event changes during refresh (#8980)
* optimize Linode SD by polling for event changes during refresh

Most accounts are fairly "static", in the sense that they're not cycling
through instances constantly. So rather than do a full refresh every
interval and potentially make several behind-the-scenes paginated API
calls, this will now poll the `/account/events/` endpoint every minute
with a list of events that we care about. If a matching event is found,
we then do a full refresh.

Co-authored-by: William Smith <wsmith@linode.com>
Signed-off-by: TJ Hoplock <t.hoplock@gmail.com>
Signed-off-by: William Smith <wsmith@linode.com>
2021-08-04 12:05:49 +02:00
Frederic Branczyk
a11be60fb8
Merge pull request #9119 from claytonpeters/promql-start-end-fix
PromQL: Fix start and end keywords masking label and metric names
2021-08-04 10:27:30 +02:00
Frederic Branczyk
fc92cdc263
Merge pull request #9150 from roidelapluie/macos-229
Add a compatibility note for macOS users.
2021-08-04 10:09:26 +02:00
Julien Pivotto
5c69624a84
Merge pull request #9141 from gebn/changelog-8896
Fix PR reference in changelog
2021-08-04 09:58:18 +02:00
Julien Pivotto
4fdf25dda5 Add a compatibility note for macOS users.
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-08-04 09:28:51 +02:00
Julien Pivotto
ba4911a482
Merge pull request #9143 from gebn/ec2-sd
Describe EC2 availability zone IDs at most once per refresh (#9142)
2021-08-04 01:16:05 +02:00
Julien Pivotto
03bee3b5df
Merge pull request #9125 from LeviHarrison/docker_sd-host-networking
docker_sd: Support host network mode
2021-08-04 01:14:39 +02:00
George Brighton
e6e7b08e6f
Integrate feedback
Signed-off-by: George Brighton <george@gebn.co.uk>
2021-08-03 16:46:57 +01:00
Ganesh Vernekar
848cb5a6d6
Enhanced WAL replay for duplicate series record (#7438)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-08-03 20:03:54 +05:30
Ganesh Vernekar
8002a3ab80
Breakdown tsdb/head.go into multiple files (#9147)
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
2021-08-03 14:14:26 +02:00
Levi Harrison
c1b1b826ce HostNetworkHost -> HostNetworkingHost
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-08-03 05:58:49 -06:00
Julien Pivotto
bd7ebf29c9
Merge pull request #9006 from LeviHarrison/fix-consoles-css
Consoles: Fix broken Node Overview page
2021-08-03 12:50:59 +02:00
Julien Pivotto
0f8a9a4495
Merge pull request #9140 from roidelapluie/remove-exp-wording
Remove experimental wording on size-based retention
2021-08-03 12:23:57 +02:00
George Brighton
1f752b6910
Incorporate feedback
Signed-off-by: George Brighton <george@gebn.co.uk>
2021-08-03 03:32:36 +01:00
George Brighton
2d8f9c6f61
Describe EC2 availability zones at most once per SD load
Closes #9142.

Signed-off-by: George Brighton <george@gebn.co.uk>
2021-08-02 20:52:37 +01:00
George Brighton
a715dd84ec
Describe EC2 availability zone IDs at most once per refresh (#9142)
Signed-off-by: George Brighton <george@gebn.co.uk>
2021-08-02 14:00:15 +01:00
George Brighton
330cc33d63
Fix PR reference in changelog
Signed-off-by: George Brighton <george@gebn.co.uk>
2021-08-02 12:45:49 +01:00
Julien Pivotto
daaff31e65 Remove experimental wording on size-based retention
Followup of #9004

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-08-02 11:08:55 +02:00
Frederic Branczyk
d9c31f3e66
Merge pull request #9137 from brancz/bump-2.29.0-rc.0
Bump version to 2.29.0-rc.0
2021-07-30 15:48:31 +02:00
Frederic Branczyk
c9ae5f5ebf
VERSION: bump to 2.29.0-rc.0
Signed-off-by: Frederic Branczyk <fbranczyk@gmail.com>
2021-07-30 14:02:46 +02:00
Frederic Branczyk
8f4d62518e
Merge pull request #9133 from brancz/cut-2.29-rc.0
*: Cut 2.29.0-rc.0
2021-07-30 14:00:41 +02:00
Frederic Branczyk
b2f4bde6a0
*: Cut 2.29.0-rc.0
Signed-off-by: Frederic Branczyk <fbranczyk@gmail.com>
2021-07-30 10:25:28 +02:00
Julien Pivotto
24165adadc
Merge pull request #9112 from darshanime/add_computer_name
Add computer name to azure sd
2021-07-30 09:58:49 +02:00
jinglina
1a430e5f89
remove redundant parentheses (#9134)
Signed-off-by: jinglina <jinglinax@163.com>
2021-07-29 18:26:57 +05:30
Darshan Chaudhary
c4f2e9eec5
Add present_over_time (#9097)
* Add present_over_time

Signed-off-by: darshanime <deathbullet@gmail.com>

* Add tests for present_over_time

Signed-off-by: darshanime <deathbullet@gmail.com>

* Address PR comments

Signed-off-by: darshanime <deathbullet@gmail.com>

* Add documentation for present_over_time

Signed-off-by: darshanime <deathbullet@gmail.com>

* Update documentation

Signed-off-by: darshanime <deathbullet@gmail.com>

* Update documentation comment

Signed-off-by: darshanime <deathbullet@gmail.com>
2021-07-29 12:38:11 +02:00
Frederic Branczyk
e2db44b653
Merge pull request #9132 from brancz/dependency-bump
Dependency bump in preparation for 2.29
2021-07-29 10:08:35 +02:00
Frederic Branczyk
fd8e8218a7
Update UI dependencies
Signed-off-by: Frederic Branczyk <fbranczyk@gmail.com>
2021-07-29 09:11:14 +02:00
Frederic Branczyk
a266d4d2c5
Update Go dependencies
Signed-off-by: Frederic Branczyk <fbranczyk@gmail.com>
2021-07-29 09:11:04 +02:00
Levi Harrison
8baaceab77
Cleaned up a little bit of HTML
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-07-28 20:12:06 -04:00
Julien Pivotto
003b7b2172
Merge pull request #9128 from prometheus/richih/1
Make clear that start/end are inclusive
2021-07-28 17:46:39 +02:00
Julien Pivotto
4b5b061427
Merge pull request #9127 from codesome/containerd
Upgrade containerd to v1.5.4
2021-07-28 17:46:01 +02:00
darshanime
898afa2fd9 Add nil checks
Signed-off-by: darshanime <deathbullet@gmail.com>
2021-07-28 19:23:17 +05:30
Philip Gough
751ca03fad mixin: Filter instance by job for Prometheus overview dashboard
Signed-off-by: Philip Gough <philip.p.gough@gmail.com>
2021-07-28 14:34:26 +01:00
Oleg Zaytsev
f9482c5bf6
Clarify computeChunkEndTime's purpose (#9049)
I was struggling to understand the purpose of this method until I
tweaked the tests, so I decided to write down my observations.

Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com>
2021-07-28 18:39:05 +05:30
Richard Hartmann
d68d3983d8 Make clear that start/end are inclusive
Fixes: https://github.com/prometheus/prometheus/issues/9100

Signed-off-by: Richard Hartmann <richih@richih.org>
2021-07-28 14:52:02 +02:00