Skip to content

tempo

v3.1.1
grafana/tempo

Grafana Tempo is a high volume, minimal dependency distributed tracing backend.

Version of grafana/tempo you run

CompareView on GitHub

Breaking changes

What to check before upgrading, taken from the notes of the last 30 releases.

  • v2.9.4Jul 24, 2026

    🛑 Breaking changes 🛑

    • distributor: Dropped support for the OpenCensus receiver. (#7323) (@zhxiaogg)
  • v2.10.6Jun 8, 2026

    🛑 Breaking changes 🛑

    • distributor: Dropped support for the OpenCensus receiver. (#7322) (@zhxiaogg)
  • v3.0.0May 28, 2026

    Breaking Changes

    Tempo 3.0 includes several operator-impacting removals and default changes. Review the migration guide before upgrading.

    • The legacy ingester-based write path has been removed. Deployments must migrate to the 3.0 ingest/write architecture.
    • Removed ingesters and the ingester module by @javiermolinar in #6504 / #6959
    • Removed remaining app ingester config and ingest.enabled by @javiermolinar in #6667 / #6873
    • Removed partition ring livestore config by @javiermolinar in #6981
    • Removed ingester and compactor alerts by @javiermolinar in #6369
    • Removed v2 block encoding and the legacy v2 compactor component by @joe-elliott in #6273
    • Removed v2-specific CLI commands: list block, list index, view index, gen index, and gen bloom.
    • Centralized block and WAL config: block_builder and live_store now always use storage.trace.block settings; per-module block config fields are removed by @stoewer in #6647
    • Recent data queries now guarantee complete results by failing when an instance is lagging. Defaults query_frontend.query_end_cutoff to 30s and live_store.fail_on_high_lag to true by @mapno in #7210 / #7232
    • Disabled legacy (flat, unscoped) overrides by default. Tempo refuses to start if legacy overrides are detected. Set enable_legacy_overrides: true or -config.enable-legacy-overrides=true to opt back in temporarily. Legacy overrides will be removed in a future release by @electron0zero in #6741
    • User-configurable overrides config metrics_generator.processors no longer merges with runtime overrides. metrics_generator.processors now takes precedence over runtime overrides, matching every other config in user-configurable overrides. Setting processors: [] disables all processors for the tenant by @electron0zero in #7176 / #7185
    • Enabled RetryInfo by default. distributor.retry_after_on_resource_exhausted now defaults to 5s (was 0) so OTLP clients receive a retry hint on ResourceExhausted errors by @electron0zero in #7088
    • Set to 0 to disable cluster-wide, or set the per-tenant override ingestion.retry_info_enabled: false to disable for a single tenant.
    • Removed duplicate compaction prefix from CompactorConfig CLI flags by @electron0zero in #6909
    • compaction.compaction.block-retention → compaction.block-retention
    • compaction.compaction.max-objects-per-block → compaction.max-objects-per-block
    • compaction.compaction.max-block-bytes → compaction.max-block-bytes
    • compaction.compaction.compaction-window → compaction.compaction-window
    • Removed OpenCensus receiver by @javiermolinar in #6523
    • Removed legacy mem-ballast-size-mbs CLI flag by @orkhan-huseyn in #6403
    • tempo-cli: Support relative time (now, now-1h) for start/end args and standardize on RFC3339 in all commands by @electron0zero in #6458
    • query search command no longer accepts timestamps without timezone, for example 2024-01-01T00:00:00; use RFC3339, for example 2024-01-01T00:00:00Z, or relative time instead.
  • v2.10.0Jan 26, 2026

    Breaking Changes

    • [CHANGE] BREAKING CHANGE Validate tenant ID in frontend and distributor #5786 (@carles-grafana)
    • [CHANGE] Remove vParquet2 encoding #6071 (@mdisibio)

    BREAKING CHANGE In the last release vParquet2 was deprecated and blocked from writes. Now, it's

    removed entirely. It will no longer be recognized as a valid encoding and cannot read any remaining vParquet2 blocks. Installations

    running with historical defaults should not require any changes as the default has been migrated for several releases. Installations

    with storage settings pinned to vParquet2 must run a previous release configured for vParquet3 or higher until all existing vParquet2 blocks

    have expired and been deleted from the backend, or else it will encounter read errors after upgrading to this release.

    • [CHANGE] BREAKING CHANGE Added scope and query params while rewriting integration tests to the Tempo HTTP client SearchTagsV2WithRange function. #6088 (@joe-elliott)
    • [CHANGE] BREAKING CHANGE TempoDB schemas vParquet3 and v2 are deprecated and will be removed in 3.0. #6198 (@joe-elliott)
  • v2.9.0Oct 13, 2025

    Breaking Changes

    • [CHANGE] BREAKING CHANGE Migrated Tempo Vulture and Integration Tests from the deprecated Jaeger agent/exporter to the standard OTLP exporter. Vulture now pushes traces to the Tempo OTLP GRCP endpoint. #5058 (@iamrajiv, @javiermolinar)
    • [CHANGE] BREAKING CHANGE TraceQL Metrics buckets are calculated based on data in past. #5366 (@ruslan-mikhailov)
    • [CHANGE] BREAKING CHANGE Fix incorrect TraceQL metrics results when series labels include strings and integers with same textural representation.

    This also changes the TraceQL metrics responses of /api/metrics/query_range and /api/metrics/query to remove the redundant

    prom_labels field which was the error source. There may be an interruption to TraceQL metrics queries during rollout while components are running the previous version. #5659 (@mdisibio)

    • [CHANGE] BREAKING CHANGE Deprecating vParquet2 block format #5688 (@ie-pham)
    • [CHANGE] BREAKING CHANGE Drop unused backend_scheduler.tenant_measurement_interval, use backend_scheduler.compaction.measure_interval instead. #5328 (@zalegrala)
    • [CHANGE] BREAKING CHANGE Add require minimum time between tenant sorting in backend-scheduler. #5410 (@zalegrala)

Release history

All releases on GitHub
BadgeLatest version of grafana/tempo[![version](/badge/grafana/tempo)](/p/grafana/tempo)

Security

  • deps: Update Go to 1.27.3 (CVE-2026-56857, CVE-2026-56866, CVE-2026-78659, CVE-2026-78660, CVE-2026-78663, CVE-2026-78667, CVE-2026-78669, CVE-2026-94439, CVE-2026-94440, CVE-2026-94448, CVE-2026-97030, CVE-2026-97031, CVE-2026-97032, CVE-2026-111943) (#8148) (@mdisibio)

Full release notesCompare with previous