v3.5.0-rc.0
📦 prometheus
✨ 6 features🐛 17 fixes🔧 11 symbols
Summary
This release (3.5) is designated as Long Term Support (LTS) and introduces several new features, particularly around PromQL experimental functions and OTLP metadata promotion, alongside numerous performance enhancements and bug fixes.
Migration Steps
- This release is LTS (Long Term Support).
- If using experimental PromQL features, enable them via feature flags (\`type-and-unit-labels\` or \`experimental-promql-functions\`).
✨ New Features
- PromQL: Add experimental type and unit metadata labels, behind feature flag \`type-and-unit-labels\`.
- PromQL: Add \`ts_of_(min|max|last)_over_time\`, behind feature flag \`experimental-promql-functions\`.
- Scraping: Add global option \`always_scrape_classic_histograms\` to scrape a classic histogram even if it is also exposed as native.
- OTLP: Support promoting OTel scope name/version/schema URL/attributes as metric labels, via \`otlp.promote_scope_metadata\`.
- OTLP: New config options \`promote_all_resource_attributes\` and \`ignore_resource_attributes\`.
- Discovery: New service discovery for STACKIT Cloud.
🐛 Bug Fixes
- Top-level: Update GOGC before loading TSDB.
- Config: Respect GOGC environment variable if no "runtime" block exists.
- PromQL: Fix native histogram \`last_over_time\`.
- PromQL: Fix reported parser position range in errors for aggregations wrapped in ParenExpr.
- PromQL: Don't emit a value from \`histogram_fraction\` or \`histogram_quantile\` if classic and native histograms are present at the same timestamp.
- PromQL: Incorrect rounding of \`[1001ms]\` to \`[1s]\` and similar.
- PromQL: Fix inconsistent / sometimes negative \`histogram_count\` and \`histogram_sum\`.
- PromQL: Improve handling of NaNs in native histograms.
- PromQL: Fix unary operator precedence in duration expressions.
- PromQL: Improve consistency of \`avg\` aggregation and \`avg_over_time\`.
- UI: Add query warnings and info to graph view.
- API: Add HTTP \`Vary: Origin\` header to responses to avoid cache poisoning.
- Discovery: Avoid deadlocks by taking locks in consistent order.
- Remote-write: For Azure AD auth, allow empty \`client_id\` to suppport system assigned managed identity.
- Scraping: Fix rare memory corruption bug.
- Scraping: continue handling custom-bucket histograms after an exponential histogram is encountered.
- OTLP: Default config not respected when \`otlp:\` block is unset.
🔧 Affected Symbols
PromQLhistogramStatsIteratorhistogram_fractionhistogram_quantileavgavg_over_timelast_over_timeHetzner SDKubernetes SDOTLPAzure AD auth