Menu
Enterprise

Version 2.12 release notes

Grafana Labs is excited to announce the release of Grafana Enterprise Metrics (GEM) 2.12, which is built on top of Grafana Mimir 2.12.

GEM 2.12 inherits all the features, enhancements, and bug fixes that are in the Grafana Mimir 2.12 release. Given this, it’s best to start with the Grafana Mimir 2.12 release notes.

Features and enhancements

Distroless images have been introduced to minimize the amount of software that may require security patches in release images. The distroless images are based on gcr.io/distroless/static-debian12 and can be found at grafana/enterprise-metrics-distroless and grafana/enterprise-metrics-boringcrypto-distroless.

Graphite query support includes the following improvements:

  • You can disable the graphite querier rate limits by setting the value for the option to 0. The options you can set are:
    • -graphite.querier.rate-limit-qps
    • -graphite.querier.tenant-rate-limit-qps
    • -graphite.querier.heavy-rate-limit-qps
  • You can use an experimental flag -graphite.querier.deduplicate-samples-in-raw-interval to keep only the last sample in the raw interval of a series. This attempts to mimic Graphite’s behavior of overwriting samples of the raw series, instead of aggregating them together.

Upgrade considerations

In Grafana Enterprise Metrics 2.12 the following behavior has changed:

  • Responses with HTTP 4xx status codes are now treated as errors and used in status_code label of request duration metric.

The default value of the following CLI flags have been changed in Grafana Enterprise Metrics 2.12:

  • -blocks-storage.tsdb.head-postings-for-matchers-cache-max-bytes from 10MB to 100MB.
  • -blocks-storage.tsdb.block-postings-for-matchers-cache-max-bytes from 10MB to 100MB.
  • -blocks-storage.bucket-store.tenant-sync-concurrency from 10 to 1.
  • -query-frontend.max-cache-freshness from 1m to 10m.
  • -distributor.write-requests-buffer-pooling-enabled from false to true.
  • -locks-storage.bucket-store.block-sync-concurrency from 20 to 4.
  • -memberlist.stream-timeout from 10s to 2s.
  • -server.report-grpc-codes-in-instrumentation-label-enabled from false to true.

The following deprecated configuration options are removed in Grafana Enterprise Metrics 2.12:

  • The YAML setting frontend.cache_unaligned_requests.
  • Experimental CLI flag -querier.prefer-streaming-chunks-from-ingesters.

The following configuration options are deprecated and will be removed in Grafana Enterprise Metrics 2.14:

  • The CLI flag -ingester.limit-inflight-requests-using-grpc-method-limiter. It now defaults to true.

  • The CLI flag -ingester.return-only-grpc-errors. It now defaults to true.

    Warning

    To guarantee backwards compatibility when migrating from a version prior to 2.11, it’s necessary to first migrate to version 2.11, and then to version 2.12. Otherwise, it might happen that during the migration, some ingester errors with HTTP status code 4xx won’t be recognized, and the corresponding request will be repeated.
  • The CLI flag -ingester.client.report-grpc-codes-in-instrumentation-label-enabled. It now defaults to true.

  • The CLI flag -distributor.limit-inflight-requests-using-grpc-method-limiter. It now defaults to true.

  • The CLI flag -distributor.enable-otlp-metadata-storage. It now defaults to true.

  • The CLI flag -querier.max-query-into-future.

The following metrics are removed or deprecated in Grafana Enterprise Metrics 2.12:

  • cortex_bucket_store_blocks_loaded_by_duration has been removed.
  • cortex_distributor_sample_delay_seconds has been deprecated and will be removed in Grafana Enterprise Metrics 2.14.

This release also inherits the upgrade considerations from the Grafana Mimir 2.12 release.

After you upgrade to GEM 2.12, upgrade your GEM plugin to the latest version. For more information about the most recent enhancements and bugfixes in the GEM plugin, see the Grafana Enterprise Metrics: Changelog.

Bug fixes

v2.12.0

  • Update Alpine to 3.18.5 to address CVE-2023-5363.
  • Update Golang to 1.21.5 to address CVE-2023-39326.
  • LBAC: caching for /prometheus/api/v1/label/* endpoints was not respecting LBAC policies leading to sharing cached responses for different LBAC policies within the same tenant.