Skip to content
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

Update dependency mimirtool to v2.13.0 #46

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jun 12, 2024

This PR contains the following updates:

Package Update Change
mimirtool minor 2.11.0 -> 2.13.0

Release Notes

grafana/mimir (mimirtool)

v2.13.0

Compare Source

Grafana Mimir
  • [CHANGE] Build: grafana/mimir docker image is now based on gcr.io/distroless/static-debian12 image. Alpine-based docker image is still available as grafana/mimir-alpine, until Mimir 2.15. #​8204 #​8235
  • [CHANGE] Ingester: /ingester/flush endpoint is now only allowed to execute only while the ingester is in Running state. The 503 status code is returned if the endpoint is called while the ingester is not in Running state. #​7486
  • [CHANGE] Distributor: Include label name in err-mimir-label-value-too-long error message: #​7740
  • [CHANGE] Ingester: enabled 1 out 10 errors log sampling by default. All the discarded samples will still be tracked by the cortex_discarded_samples_total metric. The feature can be configured via -ingester.error-sample-rate (0 to log all errors). #​7807
  • [CHANGE] Query-frontend: Query results caching and experimental query blocking now utilize the PromQL string-formatted query format rather than the unvalidated query as submitted to the frontend. #​7742
    • Query results caching should be more stable as all equivalent queries receive the same cache key, but there may be cache churn on first deploy with the updated format
    • Query blocking can no longer be circumvented with an equivalent query in a different format; see Configure queries to block
  • [CHANGE] Query-frontend: stop using -validation.create-grace-period to clamp how far into the future a query can span. #​8075
  • [CHANGE] Clamp GOMAXPROCS to runtime.NumCPU. #​8201
  • [CHANGE] Anonymous usage statistics tracking: add CPU usage percentage tracking. #​8282
  • [CHANGE] Added new metric cortex_compactor_disk_out_of_space_errors_total which counts how many times a compaction failed due to the compactor being out of disk. #​8237
  • [CHANGE] Anonymous usage statistics tracking: report active series in addition to in-memory series. #​8279
  • [CHANGE] Ruler: evaluation_delay field in the rule group configuration has been deprecated. Please use query_offset instead (it has the same exact meaning and behaviour). #​8295
  • [CHANGE] General: remove -log.buffered. The configuration option has been enabled by default and deprecated since Mimir 2.11. #​8395
  • [CHANGE] Ruler: promote tenant federation from experimental to stable. #​8400
  • [CHANGE] Ruler: promote -ruler.recording-rules-evaluation-enabled and -ruler.alerting-rules-evaluation-enabled from experimental to stable. #​8400
  • [CHANGE] General: promote -tenant-federation.max-tenants from experimental to stable. #​8400
  • [FEATURE] Continuous-test: now runable as a module with mimir -target=continuous-test. #​7747
  • [FEATURE] Store-gateway: Allow specific tenants to be enabled or disabled via -store-gateway.enabled-tenants or -store-gateway.disabled-tenants CLI flags or their corresponding YAML settings. #​7653
  • [FEATURE] New -<prefix>.s3.bucket-lookup-type flag configures lookup style type, used to access bucket in s3 compatible providers. #​7684
  • [FEATURE] Querier: add experimental streaming PromQL engine, enabled with -querier.promql-engine=mimir. #​7693 #​7898 #​7899 #​8023 #​8058 #​8096 #​8121 #​8197 #​8230 #​8247 #​8270 #​8276 #​8277 #​8291 #​8303 #​8340 #​8256 #​8348
  • [FEATURE] New /ingester/unregister-on-shutdown HTTP endpoint allows dynamic access to ingesters' -ingester.ring.unregister-on-shutdown configuration. #​7739
  • [FEATURE] Server: added experimental PROXY protocol support. The PROXY protocol support can be enabled via -server.proxy-protocol-enabled=true. When enabled, the support is added both to HTTP and gRPC listening ports. #​7698
  • [FEATURE] Query-frontend, querier: new experimental /cardinality/active_native_histogram_metrics API to get active native histogram metric names with statistics about active native histogram buckets. #​7982 #​7986 #​8008
  • [FEATURE] Alertmanager: Added -alertmanager.max-silences-count and -alertmanager.max-silence-size-bytes to set limits on per tenant silences. Disabled by default. #​8241 #​8249
  • [FEATURE] Ingester: add experimental support for the server-side circuit breakers when writing to and reading from ingesters. This can be enabled using -ingester.push-circuit-breaker.enabled and -ingester.read-circuit-breaker.enabled options. Further -ingester.push-circuit-breaker.* and -ingester.read-circuit-breaker.* options for configuring circuit-breaker are available. Added metrics cortex_ingester_circuit_breaker_results_total, cortex_ingester_circuit_breaker_transitions_total, cortex_ingester_circuit_breaker_current_state and cortex_ingester_circuit_breaker_request_timeouts_total. #​8180 #​8285 #​8315 #​8446
  • [FEATURE] Distributor, ingester: add new setting -validation.past-grace-period to limit how old (based on the wall clock minus OOO window) the ingested samples can be. The default 0 value disables this limit. #​8262
  • [ENHANCEMENT] Distributor: add metrics cortex_distributor_samples_per_request and cortex_distributor_exemplars_per_request to track samples/exemplars per request. #​8265
  • [ENHANCEMENT] Reduced memory allocations in functions used to propagate contextual information between gRPC calls. #​7529
  • [ENHANCEMENT] Distributor: add experimental limit for exemplars per series per request, enabled with -distributor.max-exemplars-per-series-per-request, the number of discarded exemplars are tracked with cortex_discarded_exemplars_total{reason="too_many_exemplars_per_series_per_request"} #​7989 #​8010
  • [ENHANCEMENT] Store-gateway: merge series from different blocks concurrently. #​7456
  • [ENHANCEMENT] Store-gateway: Add stage="wait_max_concurrent" to cortex_bucket_store_series_request_stage_duration_seconds which records how long the query had to wait for its turn for -blocks-storage.bucket-store.max-concurrent. #​7609
  • [ENHANCEMENT] Querier: add cortex_querier_federation_upstream_query_wait_duration_seconds to observe time from when a querier picks up a cross-tenant query to when work begins on its single-tenant counterparts. #​7209
  • [ENHANCEMENT] Compactor: Add cortex_compactor_block_compaction_delay_seconds metric to track how long it takes to compact blocks since the blocks are created. #​7635
  • [ENHANCEMENT] Store-gateway: add outcome label to cortex_bucket_stores_gate_duration_seconds histogram metric. Possible values for the outcome label are: rejected_canceled, rejected_deadline_exceeded, rejected_other, and permitted. #​7784
  • [ENHANCEMENT] Query-frontend: use zero-allocation experimental decoder for active series queries via -query-frontend.use-active-series-decoder. #​7665
  • [ENHANCEMENT] Go: updated to 1.22.2. #​7802
  • [ENHANCEMENT] Query-frontend: support limit parameter on /prometheus/api/v1/label/{name}/values and /prometheus/api/v1/labels endpoints. #​7722
  • [ENHANCEMENT] Expose TLS configuration for the S3 backend client. #​7959
  • [ENHANCEMENT] Rules: Support expansion of native histogram values when using rule templates #​7974
  • [ENHANCEMENT] Rules: Add metric cortex_prometheus_rule_group_last_restore_duration_seconds which measures how long it takes to restore rule groups using the ALERTS_FOR_STATE series #​7974
  • [ENHANCEMENT] OTLP: Improve remote write format translation performance by using label set hashes for metric identifiers instead of string based ones. #​8012
  • [ENHANCEMENT] Querying: Remove OpEmptyMatch from regex concatenations. #​8012
  • [ENHANCEMENT] Store-gateway: add -blocks-storage.bucket-store.max-concurrent-queue-timeout. When set, queries at the store-gateway's query gate will not wait longer than that to execute. If a query reaches the wait timeout, then the querier will retry the blocks on a different store-gateway. If all store-gateways are unavailable, then the query will fail with err-mimir-store-consistency-check-failed. #​7777 #​8149
  • [ENHANCEMENT] Store-gateway: add -blocks-storage.bucket-store.index-header.lazy-loading-concurrency-queue-timeout. When set, loads of index-headers at the store-gateway's index-header lazy load gate will not wait longer than that to execute. If a load reaches the wait timeout, then the querier will retry the blocks on a different store-gateway. If all store-gateways are unavailable, then the query will fail with err-mimir-store-consistency-check-failed. #​8138
  • [ENHANCEMENT] Ingester: Optimize querying with regexp matchers. #​8106
  • [ENHANCEMENT] Distributor: Introduce -distributor.max-request-pool-buffer-size to allow configuring the maximum size of the request pool buffers. #​8082
  • [ENHANCEMENT] Store-gateway: improve performance when streaming chunks to queriers is enabled (-querier.prefer-streaming-chunks-from-store-gateways=true) and the query selects fewer than -blocks-storage.bucket-store.batch-series-size series (defaults to 5000 series). #​8039
  • [ENHANCEMENT] Ingester: active series are now updated along with owned series. They decrease when series change ownership between ingesters. This helps provide a more accurate total of active series when ingesters are added. This is only enabled when -ingester.track-ingester-owned-series or -ingester.use-ingester-owned-series-for-limits are enabled. #​8084
  • [ENHANCEMENT] Query-frontend: include route name in query stats log lines. #​8191
  • [ENHANCEMENT] OTLP: Speed up conversion from OTel to Mimir format by about 8% and reduce memory consumption by about 30%. Can be disabled via -distributor.direct-otlp-translation-enabled=false #​7957
  • [ENHANCEMENT] Ingester/Querier: Optimise regexps with long lists of alternates. #​8221, #​8234
  • [ENHANCEMENT] Ingester: Include more detail in tracing of queries. #​8242
  • [ENHANCEMENT] Distributor: add insight=true to remote-write and OTLP write handlers when the HTTP response status code is 4xx. #​8294
  • [ENHANCEMENT] Ingester: reduce locked time while matching postings for a label, improving the write latency and compaction speed. #​8327
  • [ENHANCEMENT] Ingester: reduce the amount of locks taken during the Head compaction's garbage-collection process, improving the write latency and compaction speed. #​8327
  • [ENHANCEMENT] Query-frontend: log the start, end time and matchers for remote read requests to the query stats logs. #​8326 #​8370 #​8373
  • [BUGFIX] Distributor: prometheus retry on 5xx and 429 errors, while otlp collector only retry on 429, 502, 503 and 504, mapping other 5xx errors to the retryable ones in otlp endpoint. #​8324 #​8339
  • [BUGFIX] Distributor: make OTLP endpoint return marshalled proto bytes as response body for 4xx/5xx errors. #​8227
  • [BUGFIX] Rules: improve error handling when querier is local to the ruler. #​7567
  • [BUGFIX] Querier, store-gateway: Protect against panics raised during snappy encoding. #​7520
  • [BUGFIX] Ingester: Prevent timely compaction of empty blocks. #​7624
  • [BUGFIX] Querier: Don't cache context.Canceled errors for bucket index. #​7620
  • [BUGFIX] Store-gateway: account for "other" time in LabelValues and LabelNames requests. #​7622
  • [BUGFIX] Query-frontend: Don't panic when using the -query-frontend.downstream-url flag. #​7651
  • [BUGFIX] Ingester: when receiving multiple exemplars for a native histogram via remote write, sort them and only report an error if all are older than the latest exemplar as this could be a partial update. #​7640 #​7948 #​8014
  • [BUGFIX] Ingester: don't retain blocks if they finish exactly on the boundary of the retention window. #​7656
  • [BUGFIX] Bug-fixes and improvements to experimental native histograms. #​7744 #​7813
  • [BUGFIX] Querier: return an error when a query uses label_join with an invalid destination label name. #​7744
  • [BUGFIX] Compactor: correct outstanding job estimation in metrics and compaction-planner tool when block labels differ. #​7745
  • [BUGFIX] Ingester: turn native histogram validation errors in TSDB into soft ingester errors that result in returning 4xx to the end-user instead of 5xx. In the case of TSDB validation errors, the counter cortex_discarded_samples_total will be increased with the reason label set to "invalid-native-histogram". #​7736 #​7773
  • [BUGFIX] Do not wrap error message with sampled 1/<frequency> if it's not actually sampled. #​7784
  • [BUGFIX] Store-gateway: do not track cortex_querier_blocks_consistency_checks_failed_total metric if query has been canceled or interrued due to any error not related to blocks consistency check failed. #​7752
  • [BUGFIX] Ingester: ignore instances with no tokens when calculating local limits to prevent discards during ingester scale-up #​7881
  • [BUGFIX] Ingester: do not reuse exemplars slice in the write request if there are more than 10 exemplars per series. This should help to reduce the in-use memory in case of few requests with a very large number of exemplars. #​7936
  • [BUGFIX] Distributor: fix down scaling of native histograms in the distributor when timeseries unmarshal cache is in use. #​7947
  • [BUGFIX] Distributor: fix cardinality API to return more accurate number of in-memory series when number of zones is larger than replication factor. #​7984
  • [BUGFIX] All: fix config validation for non-ingester modules, when ingester's ring is configured with spread-minimizing token generation strategy. #​7990
  • [BUGFIX] Ingester: copy LabelValues strings out of mapped memory to avoid a segmentation fault if the region becomes unmapped before the result is marshaled. #​8003
  • [BUGFIX] OTLP: Don't generate target_info unless at least one identifying label is defined. #​8012
  • [BUGFIX] OTLP: Don't generate target_info unless there are metrics. #​8012
  • [BUGFIX] Query-frontend: Experimental query queue splitting: fix issue where offset and range selector duration were not considered when predicting query component. #​7742
  • [BUGFIX] Querying: Empty matrix results were incorrectly returning null instead of []. #​8029
  • [BUGFIX] All: don't increment thanos_objstore_bucket_operation_failures_total metric for cancelled requests. #​8072
  • [BUGFIX] Query-frontend: fix empty metric name matcher not being applied under certain conditions. #​8076
  • [BUGFIX] Querying: Fix regex matching of multibyte runes with dot operator. #​8089
  • [BUGFIX] Querying: matrix results returned from instant queries were not sorted by series. #​8113
  • [BUGFIX] Query scheduler: Fix a crash in result marshaling. #​8140
  • [BUGFIX] Store-gateway: Allow long-running index scans to be interrupted. #​8154
  • [BUGFIX] Query-frontend: fix splitting of queries using @ start() and @end() modifiers on a subquery. Previously the start() and end() would be evaluated using the start end end of the split query instead of the original query. #​8162
  • [BUGFIX] Distributor: Don't discard time series with invalid exemplars, just drop affected exemplars. #​8224
  • [BUGFIX] Ingester: fixed in-memory series count when replaying a corrupted WAL. #​8295
  • [BUGFIX] Ingester: fix context cancellation handling when a query is busy looking up series in the TSDB index and -blocks-storage.tsdb.head-postings-for-matchers-cache* or -blocks-storage.tsdb.block-postings-for-matchers-cache* are in use. #​8337
  • [BUGFIX] Querier: fix edge case where bucket indexes are sometimes cached forever instead of with the expected TTL. #​8343
  • [BUGFIX] OTLP handler: fix errors returned by OTLP handler when used via httpgrpc tunneling. #​8363
  • [BUGFIX] Update github.com/hashicorp/go-retryablehttp to address CVE-2024-6104. #​8539
  • [BUGFIX] Alertmanager: Fixes a number of bugs in silences which could cause an existing silence to be deleted/expired when updating the silence failed. This could happen when the replacing silence was invalid or exceeded limits. #​8525
  • [BUGFIX] Alertmanager: Fix per-tenant silence limits not reloaded during runtime. #​8456
  • [BUGFIX] Alertmanager: Fix help message for utf-8-strict-mode. #​8572
  • [BUGFIX] Upgrade golang to 1.22.5 to address CVE-2024-24791. #​8600
Mixin
  • [CHANGE] Alerts: Removed obsolete MimirQueriesIncorrect alert that used test-exporter metrics. Test-exporter support was however removed in Mimir 2.0 release. #​7774
  • [CHANGE] Alerts: Change threshold for MimirBucketIndexNotUpdated alert to fire before queries begin to fail due to bucket index age. #​7879
  • [FEATURE] Dashboards: added 'Remote ruler reads networking' dashboard. #​7751
  • [FEATURE] Alerts: Add MimirIngesterStuckProcessingRecordsFromKafka alert. #​8147
  • [ENHANCEMENT] Alerts: allow configuring alerts range interval via _config.base_alerts_range_interval_minutes. #​7591
  • [ENHANCEMENT] Dashboards: Add panels for monitoring distributor and ingester when using ingest-storage. These panels are disabled by default, but can be enabled using show_ingest_storage_panels: true config option. Similarly existing panels used when distributors and ingesters use gRPC for forwarding requests can be disabled by setting show_grpc_ingestion_panels: false. #​7670 #​7699
  • [ENHANCEMENT] Alerts: add the following alerts when using ingest-storage: #​7699 #​7702 #​7867
    • MimirIngesterLastConsumedOffsetCommitFailed
    • MimirIngesterFailedToReadRecordsFromKafka
    • MimirIngesterKafkaFetchErrorsRateTooHigh
    • MimirStartingIngesterKafkaReceiveDelayIncreasing
    • MimirRunningIngesterReceiveDelayTooHigh
    • MimirIngesterFailsToProcessRecordsFromKafka
    • MimirIngesterFailsEnforceStrongConsistencyOnReadPath
  • [ENHANCEMENT] Dashboards: add in-flight queries scaling metric panel for ruler-querier. #​7749
  • [ENHANCEMENT] Dashboards: renamed rows in the "Remote ruler reads" and "Remote ruler reads resources" dashboards to match the actual component names. #​7750
  • [ENHANCEMENT] Dashboards: allow switching between using classic of native histograms in dashboards. #​7627
    • Overview dashboard, Status panel, cortex_request_duration_seconds metric.
  • [ENHANCEMENT] Alerts: exclude 529 and 598 status codes from failure codes in MimirRequestsError. #​7889
  • [ENHANCEMENT] Dashboards: renamed "TCP Connections" panel to "Ingress TCP Connections" in the networking dashboards. #​8092
  • [ENHANCEMENT] Dashboards: update the use of deprecated "table (old)" panels to "table". #​8181
  • [ENHANCEMENT] Dashboards: added a component variable to "Slow queries" dashboard to allow checking the slow queries of the remote ruler evaluation query path. #​8309
  • [BUGFIX] Dashboards: fix regular expression for matching read-path gRPC ingester methods to include querying of exemplars, label-related queries, or active series queries. #​7676
  • [BUGFIX] Dashboards: fix user id abbreviations and column heads for Top Tenants dashboard. #​7724
  • [BUGFIX] Dashboards: fix incorrect query used for "queue length" panel on "Ruler" dashboard. #​8006
  • [BUGFIX] Dashboards: fix disk space utilization panels when running with a recent version of kube-state-metrics. #​8212
Jsonnet
  • [CHANGE] Memcached: Change default read timeout for chunks and index caches to 750ms from 450ms. #​7778
  • [CHANGE] Fine-tuned terminationGracePeriodSeconds for the following components: #​7364
    • Querier: changed from 30 to 180
    • Query-scheduler: changed from 30 to 180
  • [CHANGE] Change TCP port exposed by mimir-continuous-test deployment to match with updated defaults of its container image (see changes below). #​7958
  • [FEATURE] Add support to deploy Mimir with experimental ingest storage enabled. #​8028 #​8222
  • [ENHANCEMENT] Compactor: add $._config.cortex_compactor_concurrent_rollout_enabled option (disabled by default) that makes use of rollout-operator to speed up the rollout of compactors. #​7783 #​7878
  • [ENHANCEMENT] Shuffle-sharding: add $._config.shuffle_sharding.ingest_storage_partitions_enabled and $._config.shuffle_sharding.ingester_partitions_shard_size options, that allow configuring partitions shard size in ingest-storage mode. #​7804
  • [ENHANCEMENT] Update rollout-operator to v0.17.0. #​8399
  • [ENHANCEMENT] Add _config.autoscaling_querier_predictive_scaling_enabled to scale querier based on inflight queries 7 days ago. #​7775
  • [ENHANCEMENT] Add support to autoscale ruler-querier replicas based on in-flight queries too (in addition to CPU and memory based scaling). #​8060 #​8188
  • [ENHANCEMENT] Distributor: improved distributor HPA scaling metric to only take in account ready pods. This requires the metric kube_pod_status_ready to be available in the data source used by KEDA to query scaling metrics (configured via _config.autoscaling_prometheus_url). #​8251
  • [BUGFIX] Guard against missing samples in KEDA queries. #​7691
  • [BUGFIX] Alertmanager: Set -server.http-idle-timeout to avoid EOF errors in ruler. #​8192
Mimirtool
  • [CHANGE] Deprecated --rule-files flag in favor of CLI arguments. #​7756
  • [FEATURE] mimirtool: Add runtime-config verify sub-command, for verifying Mimir runtime config files. #​8123
  • [ENHANCEMENT] mimirtool promql format: Format PromQL query with Prometheus' string or pretty-print formatter. #​7742
  • [ENHANCEMENT] Add mimir-http-prefix configuration to set the Mimir URL prefix when using legacy routes. #​8069
  • [ENHANCEMENT] Add option --output-dir to mimirtool rules get and mimirtool rules print to allow persisting rule groups to a file for edit and re-upload. #​8142
  • [BUGFIX] Fix panic in loadgen subcommand. #​7629
  • [BUGFIX] mimirtool rules prepare: do not add aggregation label to on() clause if already present in group_left() or group_right(). #​7839
  • [BUGFIX] Analyze Grafana: fix parsing queries with variables. #​8062
  • [BUGFIX] mimirtool rules sync: detect a change when the query_offset or the deprecated evaluation_delay configuration changes. #​8297
Mimir Continuous Test
  • [CHANGE] mimir-continuous-test has been deprecated and replaced by a Mimir module that can be run as a target from the mimir binary using mimir -target=continuous-test. #​7753
  • [CHANGE] -server.metrics-port flag is no longer available for use in the module run of mimir-continuous-test, including the grafana/mimir-continuous-test Docker image which uses the new module. Configuring this port is still possible in the binary, which is deprecated. #​7747
  • [CHANGE] Allowed authenticatication to Mimir using both Tenant ID and basic/bearer auth #​7619.
  • [BUGFIX] Set User-Agent header for all requests sent from the testing client. #​7607
Query-tee
  • [ENHANCEMENT] Log queries that take longer than proxy.log-slow-query-response-threshold when compared to other backends. #​7346
  • [ENHANCEMENT] Add two new metrics for measuring the relative duration between backends: #​7782 #​8013 #​8330
    • cortex_querytee_backend_response_relative_duration_seconds
    • cortex_querytee_backend_response_relative_duration_proportional
Documentation
  • [ENHANCEMENT] Clarify Compactor and its storage volume when configured under Kubernetes. #​7675
  • [ENHANCEMENT] Add OTLP route to Mimir routes by path runbooks section. #​8074
  • [ENHANCEMENT] Document option server.log-source-ips-full. #​8268
Tools
  • [ENHANCEMENT] ulidtime: add option to show random part of ULID, timestamp in milliseconds and header. #​7615
  • [ENHANCEMENT] copyblocks: add a flag to configure part-size for multipart uploads in s3 client-side copying. #​8292
  • [ENHANCEMENT] copyblocks: enable pprof HTTP endpoints. #​8292

v2.12.0

Compare Source

Grafana Mimir
  • [CHANGE] Alertmanager: Deprecates the v1 API. All v1 API endpoints now respond with a JSON deprecation notice and a status code of 410. All endpoints have a v2 equivalent. The list of endpoints is: #​7103
    • <alertmanager-web.external-url>/api/v1/alerts
    • <alertmanager-web.external-url>/api/v1/receivers
    • <alertmanager-web.external-url>/api/v1/silence/{id}
    • <alertmanager-web.external-url>/api/v1/silences
    • <alertmanager-web.external-url>/api/v1/status
  • [CHANGE] Ingester: Increase default value of -blocks-storage.tsdb.head-postings-for-matchers-cache-max-bytes and -blocks-storage.tsdb.block-postings-for-matchers-cache-max-bytes to 100 MiB (previous default value was 10 MiB). #​6764
  • [CHANGE] Validate tenant IDs according to documented behavior even when tenant federation is not enabled. Note that this will cause some previously accepted tenant IDs to be rejected such as those longer than 150 bytes or containing | characters. #​6959
  • [CHANGE] Ruler: don't use backoff retry on remote evaluation in case of 4xx errors. #​7004
  • [CHANGE] Server: responses with HTTP 4xx status codes are now treated as errors and used in status_code label of request duration metric. #​7045
  • [CHANGE] Memberlist: change default for -memberlist.stream-timeout from 10s to 2s. #​7076
  • [CHANGE] Memcached: remove legacy thanos_cache_memcached_* and thanos_memcached_* prefixed metrics. Instead, Memcached and Redis cache clients now emit thanos_cache_* prefixed metrics with a backend label. #​7076
  • [CHANGE] Ruler: the following metrics, exposed when the ruler is configured to discover Alertmanager instances via service discovery, have been renamed: #​7057
    • prometheus_sd_failed_configs renamed to cortex_prometheus_sd_failed_configs
    • prometheus_sd_discovered_targets renamed to cortex_prometheus_sd_discovered_targets
    • prometheus_sd_received_updates_total renamed to cortex_prometheus_sd_received_updates_total
    • prometheus_sd_updates_delayed_total renamed to cortex_prometheus_sd_updates_delayed_total
    • prometheus_sd_updates_total renamed to cortex_prometheus_sd_updates_total
    • prometheus_sd_refresh_failures_total renamed to cortex_prometheus_sd_refresh_failures_total
    • prometheus_sd_refresh_duration_seconds renamed to cortex_prometheus_sd_refresh_duration_seconds
  • [CHANGE] Query-frontend: the default value for -query-frontend.not-running-timeout has been changed from 0 (disabled) to 2s. The configuration option has also been moved from "experimental" to "advanced". #​7127
  • [CHANGE] Store-gateway: to reduce disk contention on HDDs the default value for blocks-storage.bucket-store.tenant-sync-concurrency has been changed from 10 to 1 and the default value for blocks-storage.bucket-store.block-sync-concurrency has been changed from 20 to 4. #​7136
  • [CHANGE] Store-gateway: Remove deprecated CLI flags -blocks-storage.bucket-store.index-header-lazy-loading-enabled and -blocks-storage.bucket-store.index-header-lazy-loading-idle-timeout and their corresponding YAML settings. Instead, use -blocks-storage.bucket-store.index-header.lazy-loading-enabled and -blocks-storage.bucket-store.index-header.lazy-loading-idle-timeout. #​7521
  • [CHANGE] Store-gateway: Mark experimental CLI flag -blocks-storage.bucket-store.index-header.lazy-loading-concurrency and its corresponding YAML settings as advanced. #​7521
  • [CHANGE] Store-gateway: Remove experimental CLI flag -blocks-storage.bucket-store.index-header.sparse-persistence-enabled since this is now the default behavior. #​7535
  • [CHANGE] All: set -server.report-grpc-codes-in-instrumentation-label-enabled to true by default, which enables reporting gRPC status codes as status_code labels in the cortex_request_duration_seconds metric. #​7144
  • [CHANGE] Distributor: report gRPC status codes as status_code labels in the cortex_ingester_client_request_duration_seconds metric by default. #​7144
  • [CHANGE] Distributor: CLI flag -ingester.client.report-grpc-codes-in-instrumentation-label-enabled has been deprecated, and its default value is set to true. #​7144
  • [CHANGE] Ingester: CLI flag -ingester.return-only-grpc-errors has been deprecated, and its default value is set to true. To ensure backwards compatibility, during a migration from a version prior to 2.11.0 to 2.12 or later, -ingester.return-only-grpc-errors should be set to false. Once all the components are migrated, the flag can be removed. #​7151
  • [CHANGE] Ingester: the following CLI flags have been moved from "experimental" to "advanced": #​7169
    • -ingester.ring.token-generation-strategy
    • -ingester.ring.spread-minimizing-zones
    • -ingester.ring.spread-minimizing-join-ring-in-order
  • [CHANGE] Query-frontend: the default value of the CLI flag -query-frontend.max-cache-freshness (and its respective YAML configuration parameter) has been changed from 1m to 10m. #​7161
  • [CHANGE] Distributor: default the optimization -distributor.write-requests-buffer-pooling-enabled to true. #​7165
  • [CHANGE] Tracing: Move query information to span attributes instead of span logs. #​7046
  • [CHANGE] Distributor: the default value of circuit breaker's CLI flag -ingester.client.circuit-breaker.cooldown-period has been changed from 1m to 10s. #​7310
  • [CHANGE] Store-gateway: remove cortex_bucket_store_blocks_loaded_by_duration. cortex_bucket_store_series_blocks_queried is better suited for detecting when compactors are not able to keep up with the number of blocks to compact. #​7309
  • [CHANGE] Ingester, Distributor: the support for rejecting push requests received via gRPC before reading them into memory, enabled via -ingester.limit-inflight-requests-using-grpc-method-limiter and -distributor.limit-inflight-requests-using-grpc-method-limiter, is now stable and enabled by default. The configuration options have been deprecated and will be removed in Mimir 2.14. #​7360
  • [CHANGE] Distributor: Change-distributor.enable-otlp-metadata-storage flag's default to true, and deprecate it. The flag will be removed in Mimir 2.14. #​7366
  • [CHANGE] Store-gateway: Use a shorter TTL for cached items related to temporary blocks. #​7407 #​7534
  • [CHANGE] Standardise exemplar label as "trace_id". #​7475
  • [CHANGE] The configuration option -querier.max-query-into-future has been deprecated and will be removed in Mimir 2.14. #​7496
  • [CHANGE] Distributor: the metric cortex_distributor_sample_delay_seconds has been deprecated and will be removed in Mimir 2.14. #​7516
  • [CHANGE] Query-frontend: The deprecated YAML setting frontend.cache_unaligned_requests has been moved to limits.cache_unaligned_requests. #​7519
  • [CHANGE] Querier: the CLI flag -querier.minimize-ingester-requests has been moved from "experimental" to "advanced". #​7638
  • [CHANGE] Ingester: allow only POST method on /ingester/shutdown, as previously it was too easy to accidentally trigger through GET requests. At the same time, add an option to keep the existing behavior by introducing an -api.get-request-for-ingester-shutdown-enabled flag. This flag will be removed in Mimir 2.15. #​7707
  • [FEATURE] Introduce -server.log-source-ips-full option to log all IPs from Forwarded, X-Real-IP, X-Forwarded-For headers. #​7250
  • [FEATURE] Introduce -tenant-federation.max-tenants option to limit the max number of tenants allowed for requests when federation is enabled. #​6959
  • [FEATURE] Cardinality API: added a new count_method parameter which enables counting active label names. #​7085
  • [FEATURE] Querier / query-frontend: added -querier.promql-experimental-functions-enabled CLI flag (and respective YAML config option) to enable experimental PromQL functions. The experimental functions introduced are: mad_over_time(), sort_by_label() and sort_by_label_desc(). #​7057
  • [FEATURE] Alertmanager API: added -alertmanager.grafana-alertmanager-compatibility-enabled CLI flag (and respective YAML config option) to enable an experimental API endpoints that support the migration of the Grafana Alertmanager. #​7057
  • [FEATURE] Alertmanager: Added -alertmanager.utf8-strict-mode-enabled to control support for any UTF-8 character as part of Alertmanager configuration/API matchers and labels. It's default value is set to false. #​6898
  • [FEATURE] Querier: added histogram_avg() function support to PromQL. #​7293
  • [FEATURE] Ingester: added -blocks-storage.tsdb.timely-head-compaction flag, which enables more timely head compaction, and defaults to false. #​7372
  • [FEATURE] Compactor: Added /compactor/tenants and /compactor/tenant/{tenant}/planned_jobs endpoints that provide functionality that was provided by tools/compaction-planner -- listing of planned compaction jobs based on tenants' bucket index. #​7381
  • [FEATURE] Add experimental support for streaming response bodies from queriers to frontends via -querier.response-streaming-enabled. This is currently only supported for the /api/v1/cardinality/active_series endpoint. #​7173
  • [FEATURE] Release: Added mimir distroless docker image. #​7371
  • [FEATURE] Add support for the new grammar of {"metric_name", "l1"="val"} to promql and some of the exposition formats. #​7475 #​7541
  • [ENHANCEMENT] Distributor: Add a new metric cortex_distributor_otlp_requests_total to track the total number of OTLP requests. #​7385
  • [ENHANCEMENT] Vault: add lifecycle manager for token used to authenticate to Vault. This ensures the client token is always valid. Includes a gauge (cortex_vault_token_lease_renewal_active) to check whether token renewal is active, and the counters cortex_vault_token_lease_renewal_success_total and cortex_vault_auth_success_total to see the total number of successful lease renewals / authentications. #​7337
  • [ENHANCEMENT] Store-gateway: add no-compact details column on store-gateway tenants admin UI. #​6848
  • [ENHANCEMENT] PromQL: ignore small errors for bucketQuantile #​6766
  • [ENHANCEMENT] Distributor: improve efficiency of some errors #​6785
  • [ENHANCEMENT] Ruler: exclude vector queries from being tracked in cortex_ruler_queries_zero_fetched_series_total. #​6544
  • [ENHANCEMENT] Ruler: local storage backend now supports reading a rule group via /config/api/v1/rules/{namespace}/{groupName} configuration API endpoint. #​6632
  • [ENHANCEMENT] Query-Frontend and Query-Scheduler: split tenant query request queues by query component with query-frontend.additional-query-queue-dimensions-enabled and query-scheduler.additional-query-queue-dimensions-enabled. #​6772
  • [ENHANCEMENT] Distributor: support disabling metric relabel rules per-tenant via the flag -distributor.metric-relabeling-enabled or associated YAML. #​6970
  • [ENHANCEMENT] Distributor: -distributor.remote-timeout is now accounted from the first ingester push request being sent. #​6972
  • [ENHANCEMENT] Storage Provider: -<prefix>.s3.sts-endpoint sets a custom endpoint for AWS Security Token Service (AWS STS) in s3 storage provider. #​6172
  • [ENHANCEMENT] Querier: add cortex_querier_queries_storage_type_total metric that indicates how many queries have executed for a source, ingesters or store-gateways. Add cortex_querier_query_storegateway_chunks_total metric to count the number of chunks fetched from a store gateway. #​7099,#​7145
  • [ENHANCEMENT] Query-frontend: add experimental support for sharding active series queries via -query-frontend.shard-active-series-queries. #​6784
  • [ENHANCEMENT] Distributor: set -distributor.reusable-ingester-push-workers=2000 by default and mark feature as advanced. #​7128
  • [ENHANCEMENT] All: set -server.grpc.num-workers=100 by default and mark feature as advanced. #​7131
  • [ENHANCEMENT] Distributor: invalid metric name error message gets cleaned up to not include non-ascii strings. #​7146
  • [ENHANCEMENT] Store-gateway: add source, level, and out_or_order to cortex_bucket_store_series_blocks_queried metric that indicates the number of blocks that were queried from store gateways by block metadata. #​7112 #​7262 #​7267
  • [ENHANCEMENT] Compactor: After updating bucket-index, compactor now also computes estimated number of compaction jobs based on current bucket-index, and reports the result in cortex_bucket_index_estimated_compaction_jobs metric. If computation of jobs fails, cortex_bucket_index_estimated_compaction_jobs_errors_total is updated instead. #​7299
  • [ENHANCEMENT] Mimir: Integrate profiling into tracing instrumentation. #​7363
  • [ENHANCEMENT] Alertmanager: Adds metric cortex_alertmanager_notifications_suppressed_total that counts the total number of notifications suppressed for being silenced, inhibited, outside of active time intervals or within muted time intervals. #​7384
  • [ENHANCEMENT] Query-scheduler: added more buckets to cortex_query_scheduler_queue_duration_seconds histogram metric, in order to better track queries staying in the queue for longer than 10s. #​7470
  • [ENHANCEMENT] A type label is added to prometheus_tsdb_head_out_of_order_samples_appended_total metric. #​7475
  • [ENHANCEMENT] Distributor: Optimize OTLP endpoint. #​7475
  • [ENHANCEMENT] API: Use github.com/klauspost/compress for faster gzip and deflate compression of API responses. #​7475
  • [ENHANCEMENT] Ingester: Limiting on owned series (-ingester.use-ingester-owned-series-for-limits) now prevents discards in cases where a tenant is sharded across all ingesters (or shuffle sharding is disabled) and the ingester count increases. #​7411
  • [ENHANCEMENT] Block upload: include converted timestamps in the error message if block is from the future. #​7538
  • [ENHANCEMENT] Query-frontend: Introduce -query-frontend.active-series-write-timeout to allow configuring the server-side write timeout for active series requests. #​7553 #​7569
  • [BUGFIX] Ingester: don't ignore errors encountered while iterating through chunks or samples in response to a query request. #​6451
  • [BUGFIX] Fix issue where queries can fail or omit OOO samples if OOO head compaction occurs between creating a querier and reading chunks #​6766
  • [BUGFIX] Fix issue where concatenatingChunkIterator can obscure errors #​6766
  • [BUGFIX] Fix panic during tsdb Commit #​6766
  • [BUGFIX] tsdb/head: wlog exemplars after samples #​6766
  • [BUGFIX] Ruler: fix issue where "failed to remotely evaluate query expression, will retry" messages are logged without context such as the trace ID and do not appear in trace events. #​6789
  • [BUGFIX] Ruler: do not retry requests to remote querier when server's response exceeds its configured max payload size. #​7216
  • [BUGFIX] Querier: fix issue where spans in query request traces were not nested correctly. #​6893
  • [BUGFIX] Fix issue where all incoming HTTP requests have duplicate trace spans. #​6920
  • [BUGFIX] Querier: do not retry requests to store-gateway when a query gets canceled. #​6934
  • [BUGFIX] Querier: return 499 status code instead of 500 when a request to remote read endpoint gets canceled. #​6934
  • [BUGFIX] Querier: fix issue where -querier.max-fetched-series-per-query is not applied to /series endpoint if the series are loaded from ingesters. #​7055
  • [BUGFIX] Distributor: fix issue where -distributor.metric-relabeling-enabled may cause distributors to panic #​7176
  • [BUGFIX] Distributor: fix issue where -distributor.metric-relabeling-enabled may cause distributors to write unsorted labels and corrupt blocks #​7326
  • [BUGFIX] Query-frontend: the cortex_query_frontend_queries_total report incorrectly reported op="query" for any request which wasn't a range query. Now the op label value can be one of the following: #​7207
    • query: instant query
    • query_range: range query
    • cardinality: cardinality query
    • label_names_and_values: label names / values query
    • active_series: active series query
    • other: any other request
  • [BUGFIX] Fix performance regression introduced in Mimir 2.11.0 when uploading blocks to AWS S3. #​7240
  • [BUGFIX] Query-frontend: fix race condition when sharding active series is enabled (see above) and response is compressed with snappy. #​7290
  • [BUGFIX] Query-frontend: "query stats" log unsuccessful replies from downstream as "failed". #​7296
  • [BUGFIX] Packaging: remove reload from systemd file as mimir does not take into account SIGHUP. #​7345
  • [BUGFIX] Compactor: do not allow out-of-order blocks to prevent timely compaction. #​7342
  • [BUGFIX] Update google.golang.org/grpc to resolve occasional issues with gRPC server closing its side of connection before it was drained by the client. #​7380
  • [BUGFIX] Query-frontend: abort response streaming for active_series requests when the request context is canceled. #​7378
  • [BUGFIX] Compactor: improve compaction of sporadic blocks. #​7329
  • [BUGFIX] Ruler: fix regression that caused client errors to be tracked in cortex_ruler_write_requests_failed_total metric. #​7472
  • [BUGFIX] promql: Fix Range selectors with an @​ modifier are wrongly scoped in range queries. #​7475
  • [BUGFIX] Fix metadata API using wrong JSON field names. #​7475
  • [BUGFIX] Ruler: fix native histogram recording rule result corruption. #​7552
  • [BUGFIX] Querier: fix HTTP status code translations for remote read requests. Previously, remote-read had conflicting behaviours: when returning samples all internal errors were translated to HTTP 400; when returning chunks all internal errors w

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/mimirtool-2.x branch from 483c338 to 93af4cd Compare July 5, 2024 21:52
@renovate renovate bot changed the title Update dependency mimirtool to v2.12.0 Update dependency mimirtool to v2.13.0 Jul 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants