-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: add initial design overview #2
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
bwplotka
approved these changes
Nov 2, 2017
povilasv
added a commit
to povilasv/thanos
that referenced
this pull request
Aug 28, 2018
GiedriusS
referenced
this pull request
in GiedriusS/thanos
Feb 9, 2019
GiedriusS
added a commit
that referenced
this pull request
Mar 23, 2019
…798) * store: add ability to limit max samples / conc. queries * store/bucket: account for the RawChunk case Convert raw chunks into XOR encoded chunks and call the NumSamples() method on them to calculate the number of samples. Rip out the samples calculation into a different function because it is used in two different places. * store/bucket_e2e_test: adjust sample limit size It should be actually 30 - I miscalculated this. * store/bucket: add metric thanos_bucket_store_queries_limited_total * store/bucket: register queriesLimited metric * store: make changes according to the review comments * docs/store: update * store: gating naming changes, add span/extra metric * store: improve error messages * store/limiter: improve error messages * store/gate: time -> seconds * store/bucket_e2e_test: narrow down the first query * store/bucket: check for negative maxConcurrent * cmd/store: clarify help message * pkg/store: hook thanos_bucket_store_queries_limited into Limiter * store/bucket_test: fix NewBucketStore call * docs: update again * store/gate: spelling fix * store/gate: spelling fix #2 * store/bucket: remove pointless newline * store/gate: generalize gate timing Make the metric show in general how much time it takes for queries to wait at the gate. * store/gate: convert the g.gateTiming metric into a histogram * store/bucket: change comment wording * store/bucket: remove type from maxSamplesPerChunk Let Go decide by itself what kind of type it needs. * store/bucket: rename metric into thanos_bucket_store_queries_dropped * thanos/store: clarify help message Literally explain what it means in the help message so that it would be clearer. * store/gate: rename metric to thanos_bucket_store_queries_in_flight More fitting as decided by everyone. * store/gate: fix MustRegister() call * docs: update * store/bucket: clarify the name of the span Make it more clearer about what it is for. * store/bucket: inline calculation into the function call No need to create an extra variable in a hot path in the code if we can inline it and it will be just as clear. * CHANGELOG: add item about this * store/gate: reduce number of buckets * store/bucket: rename metric to thanos_bucket_store_queries_dropped_total * store/bucket: move defer out of code block * store/gate: generalize gate for different kinds of subsystems * store/limiter: remove non-nil check * CHANGELOG: fixes * store/limiter: convert failedCounter to non-ptr * store/limiter: remove invalid comment * *: update according to review comments * CHANGELOG: update * *: fix according to review * *: fix according to review * *: make docs * CHANGELOG: clean up * CHANGELOG: update * *: queries_in_flight_total -> queries_in_flight * store/bucket: do not wraper samplesLimiter error The original error already informs us about what is going wrong. * store/bucket: err -> errors.Wrap It's still useful to know that we are talking about samples here exactly. * store: make store.grpc.series-max-concurrency 20 by default Setting it to 0 by default doesn't make sense since the Go channel becomes unbuffered and all queries will timeout. Set it to 20 by default since that's the limit on Thanos Query and naturally there won't be more than 20 by default so it's good. * CHANGELOG: add warning about new limit
paulfantom
pushed a commit
to paulfantom/thanos
that referenced
this pull request
Jul 22, 2019
vendor: add vendor directory as we need self-contained code for OSBS
2 tasks
GiedriusS
added a commit
that referenced
this pull request
Jul 21, 2022
cache: cache locally in memcached as a PoC
LeviHarrison
pushed a commit
to LeviHarrison/thanos
that referenced
this pull request
Aug 23, 2022
Out of order update
charlottexl
pushed a commit
to charlottexl/thanos
that referenced
this pull request
May 31, 2024
Rule do not turn off if resolving fails
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
A first version of the overall design.
I also added a cost estimate at the bottom. Please don't quote me on it – especially the instance types are a completely wild guess. But since they account for a relatively small percentage, it might still be close. Resources for collecting Prometheus servers not included.