From b4ba75c91c0acf6b2f9b44eadddfeeac1d6c1f4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrej=20Kiripolsk=C3=BD?= <4126171+AndrejKiri@users.noreply.github.com> Date: Fri, 18 Sep 2026 11:20:13 +0200 Subject: [PATCH 1/8] Add blog post: Prometheus and OpenTelemetry interoperability survey results MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cross-post of the 2026 survey originally written for opentelemetry.io, adapted to Prometheus blog conventions and asset paths. Signed-off-by: Andrej Kiripolský <4126171+AndrejKiri@users.noreply.github.com> --- ...otel-prometheus-interoperability-survey.md | 150 ++++++++++++++++++ .../application-instrumentation-methods.png | Bin 0 -> 13097 bytes .../application-instrumentation-styles.png | Bin 0 -> 20532 bytes .../blog/2026-09-21/ease-of-use-average.png | Bin 0 -> 8697 bytes .../blog/2026-09-21/ease-of-use-breakdown.png | Bin 0 -> 15647 bytes ...infrastructure-instrumentation-methods.png | Bin 0 -> 14425 bytes .../infrastructure-instrumentation-styles.png | Bin 0 -> 19593 bytes .../metrics-transformation-tools.png | Bin 0 -> 13880 bytes .../2026-09-21/vanilla-stack-breakdown.png | Bin 0 -> 19698 bytes 9 files changed, 150 insertions(+) create mode 100644 blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md create mode 100644 public/assets/blog/2026-09-21/application-instrumentation-methods.png create mode 100644 public/assets/blog/2026-09-21/application-instrumentation-styles.png create mode 100644 public/assets/blog/2026-09-21/ease-of-use-average.png create mode 100644 public/assets/blog/2026-09-21/ease-of-use-breakdown.png create mode 100644 public/assets/blog/2026-09-21/infrastructure-instrumentation-methods.png create mode 100644 public/assets/blog/2026-09-21/infrastructure-instrumentation-styles.png create mode 100644 public/assets/blog/2026-09-21/metrics-transformation-tools.png create mode 100644 public/assets/blog/2026-09-21/vanilla-stack-breakdown.png diff --git a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md new file mode 100644 index 000000000..c476bf693 --- /dev/null +++ b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md @@ -0,0 +1,150 @@ +--- +title: Prometheus and OpenTelemetry interoperability in 2026 - Survey results +created_at: 2026-09-21 +kind: article +author_name: Dhruv Ahuja (@dhruv-ahuja), Andrej Kiripolsky (@andrejkiri), Ana Muenz (@vampirarte), Arthur Silva Sens (@ArthurSens) +--- + +We ran a survey asking users of OpenTelemetry and Prometheus how they collect, process, and store metrics. The goal was to understand, with real usage data rather than assumptions, how far the ecosystem has moved and whether the interoperability still causes friction. + + + +## Key takeaways + +1. Interoperability has measurably improved since our [2024 survey](https://opentelemetry.io/blog/2024/prometheus-compatibility-survey/): the average ease-of-use rating rose from 3.1 to 3.6, the equivalent of one in two respondents rating a whole category higher, and the share of respondents finding the two hard to use together fell from 29% to 10%. +2. In infrastructure instrumentation, Prometheus exporters remain the most-used method (72%) with OTel receivers close behind (57%), and nearly half of respondents run both at once rather than migrating from one to the other. +3. In application instrumentation, OTel SDKs are the most-used method at 65% with Prometheus SDKs at 52%, and 41% use only the OTel style of application instrumentation. +4. Prometheus relabeling rules (54%) and the open source OTel Collector (53%) are the two most common processing steps, and 65% of respondents run a "vanilla stack" of one or both with no vendor transformation or custom Collector build anywhere in the pipeline. + +## Demographics + +From 186 people who responded, 81 passed our screening for active OpenTelemetry-for-metrics users on a Prometheus-adjacent backend. We also filtered out observability vendor employees to focus on end users. In the analyzed sample: + +- All respondents are active OpenTelemetry users. +- All respondents use some flavor of Prometheus – Prometheus itself (46%), an open source Prometheus-compatible backend such as Thanos, Cortex, or Grafana Mimir (42%), or a PromQL-compatible vendor product (12%). +- Respondents' observability maturity is high. 48% describe their organization as having "a well-established observability practice" (Expert), 41% are "setting up an observability practice" (Intermediate), while only 11% consider themselves beginners in observability. +- Organizations skew large. 42% have 1,000+ employees, 31% have 100–999, 15% have 50–99, and 12% report having under 50. + +## Ease of use change over time + +**How easy or difficult is it to use OpenTelemetry and Prometheus together?** + +This year, we asked the same question as in the similar 2024 survey to see whether end users saw progress in interoperability. + +The average rating rose by 0.5 point, from 3.1 to 3.6 — as if every second respondent had moved up a full category. The clearest movement is at the difficult end of the scale: the share of respondents who found the two hard to use together dropped to roughly a third of its 2024 level. Also, nobody this year picked "Very difficult". + +Two years of work on interoperability is paying off. At the same time, since the single largest group of responses sits at "Neither easy nor difficult", there is still a lot of work to be done in this area. + +
+ Grouped bar chart comparing ease-of-use ratings in 2024 and 2026: very difficult 7% to 0%, somewhat difficult 22% to 10%, neutral 37% to 40%, somewhat easy 26% to 33%, very easy 8% to 17% + Bar chart of the average ease-of-use rating: 3.1 in 2024 and 3.6 in 2026 on a five-point scale +
+ +_**Note**: The 2024 survey didn't ask respondents whether they worked for an observability vendor, so this is not an exact apples-to-apples population match. However, putting vendor employees back into the 2026 sample (n = 108) would barely change the result for the ease of use rating (0%, 10%, 40%, 33%, 17% → 0%, 10%, 41%, 33%, 16%). To keep this year's results consistent, we decided to stick with filtering vendor employees out._ + +## Infrastructure metrics + +**How do you instrument infrastructure metrics collection?** + +Prometheus exporters are the most common single instrumentation method for infrastructure metrics but OTel receivers are close behind. Built-in `/metrics` endpoint, built-in OTLP push, and OpenTelemetry eBPF instrumentation (OBI) follow. + +When looking at how these methods combine, the picture is clearly hybrid, not either/or. Nearly half of respondents are mixing Prometheus and OTel instrumentation styles at once for infrastructure metrics, rather than doing a full migration. Only Prometheus style is twice as popular as only OTel style. + +
+ Bar chart of infrastructure instrumentation methods: Prometheus exporters 72%, OTel receivers 57%, built-in /metrics endpoint 43%, built-in OTLP push 26%, OBI 12%, other 5%, don't collect 2% + Pie chart of infrastructure instrumentation styles: mix 49.4%, only Prometheus-style 30.4%, only OTel-style 15.2%, other 5.1% +
+ +_**Note**: Instrumentation style describes whether a respondent uses methods native to one project only, or a mix of both. OTel-style includes using OTel receivers, Built-in OTLP push, or OpenTelemetry eBPF Instrumentation (OBI). Prometheus-style includes Prometheus exporters or Built-in `/metrics` endpoint (no exporter). The 4 "Other" responses are write-ins: Zabbix, Heorku Telemetry (likely "Heroku Telemetry"), textfile collector, Telegraf. All 4 respondents also selected a real Prometheus/OTel method alongside their write-in — but in the style chart above, a write-in places a respondent in "Other" regardless of what else they selected._ + +_**Work in progress**: The Prometheus and OTel communities are working on making Prometheus exporters run as an OTel Collector distribution. The conversations are still ongoing. The discussion is open in [this issue](https://github.com/open-telemetry/opentelemetry-collector-releases/issues/1618)._ + +## Application metrics + +**How do you instrument application metrics collection?** + +Preferences swap for application instrumentation. OTel SDKs come out on top with Prometheus SDKs following behind them. OBI holds roughly the same share as in infrastructure instrumentation. + +Instrumentation styles shift as well. The largest share of participants (41%) use only OTel style instrumentation, nearly twice as common as only Prometheus style. Fewer than a third mix styles. + +
+ Bar chart of application instrumentation methods: OTel SDKs 65%, Prometheus SDKs 52%, OBI 12%, other 5%, don't collect 6% + Pie chart of application instrumentation styles: only OTel-style 41.3%, mix 30.7%, only Prometheus-style 22.7%, other 5.3% +
+ +_**Note**: In application instrumentation, OTel-style includes using OTel SDKs or OpenTelemetry eBPF Instrumentation (OBI). Prometheus-style includes Prometheus SDKs. Again, there are 4 write-ins that we categorized as "Other": already built exporters, Micrometer, textfile collector, jvm-exporter. 3 of the 4 also selected a real Prometheus/OTel method. One respondent's original write-ins, "Self instrumentation" and "manual instrumentation for OTEl," were recoded to plain OTel SDKs._ + +## Transformation + +**What do you use to process or transform metrics before sending them to storage?** + +Prometheus relabeling rules and the open source OTel Collector are the two most common processing steps with neither of them leading clearly. + +Most respondents run a vanilla stack: only Prometheus relabeling rules and/or the plain OTel Collector, with no vendor distribution and no custom-built Collector in the pipeline. The three vanilla patterns come out close to even. + +
+ Bar chart of metrics transformation tools: Prometheus relabeling and recording rules 54%, open source OTel Collector 53%, vendor distribution of the Collector 11%, custom-built Collector 10%, nothing 15% + Pie chart of vanilla stack patterns: other 34.6%, mix 23.5%, only open source Collector 22.2%, only Prometheus relabeling and recording rules 19.8% +
+ +_**Note**: "Other" combines respondents who do no transformation at all (15%, n=12) with those using a vendor distribution or custom-built Collector (20%, n=16)._ + +## What practitioners want improved + +**What would you like us to improve to make OpenTelemetry and Prometheus work better together?** + +We received 19 open-ended responses with suggestions on what to improve. Three themes emerged from this data — unifying Prometheus and OTel's data models (attributes/labels), better handling of resource attributes and metadata, and naming and formatting friction — alongside a few individual asks. Prometheus maintainers György "Krajo" Krajcsovits and Arthur Sens went through the responses and addressed each point below: + +- Unifying Prometheus and OTel's data models (attributes/labels) + - This is a valid ask that we recognize. We will raise it for a discussion at the Prometheus Dev summit in October. +- Resource attributes and metadata + - This should be addressed by the [native metadata design doc](https://docs.google.com/document/d/1yYnyD7oJDvJhzFaigdniq6y302Mvp9gDcJUeAj3pJ0s/edit?tab=t.0#heading=h.5prvoamow70t). One thing that we have to wait for is finishing the OTel Entities spec. +- Naming and formatting friction + - Several relevant things already exist — the [OpenMetrics 2.0 exposition format](https://prometheus.io/docs/specs/om/open_metrics_spec_2_0/) lets OTel-style names be used directly in code, PromQL already supports UTF-8 metric names, and Prometheus's OTLP receiver has [configurable translation strategies](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#configuration-file). The pieces exist; they're just not the default yet. We have to work on this. +- Using Prometheus native recording rules in the Collector + - There's an open [Prometheus proposal](https://github.com/prometheus/proposals/pull/67) and [proof-of-concept PR](https://github.com/prometheus/prometheus/pull/10529) for scrape-time recording rules, which wouldn't need a full TSDB the way recording rules do today. Since the OpenTelemetry Collector's Prometheus Receiver uses Prometheus code as a Go Library, this proposal would also benefit the Collector. +- Enable MCP or agentic AI workflows + - Prometheus just onboarded the [Prometheus MCP](https://github.com/prometheus/prometheus-mcp) project repository to its GitHub org. This should enable MCP workflows for Prometheus. The Prometheus community would love to see people start using it and get feedback. Also, the [native metadata design doc](https://docs.google.com/document/d/1yYnyD7oJDvJhzFaigdniq6y302Mvp9gDcJUeAj3pJ0s/edit?tab=t.0#heading=h.5prvoamow70t) explains how we plan to make agentic AI workflows even better in Prometheus. + +## Interesting observations + +### Mid-size organizations may be furthest into OTel-native tooling + +In our data, 100–999-employee organizations come out highest on OTel SDK adoption for application metrics and on OTel receiver adoption for infrastructure metrics. eBPF-based instrumentation (OBI) doesn't follow the same pattern — there it's the 1,000+ organizations that stand apart from every smaller band. + +Adoption by organization size: + +| Organization size | OTel SDKs
(application) | OTel receivers
(infrastructure) | eBPF / OBI
(infrastructure) | +| ------------------ | --------------------------- | ------------------------------------ | -------------------------------- | +| 1–49 (n = 10) | 40% | 20% | 20% | +| 50–99 (n = 12) | 58% | 58% | 17% | +| 100–999 (n = 25) | 84% | 76% | 20% | +| 1,000+ (n = 34) | 62% | 53% | 3% | + +Our hypothesis is that mid-size organizations — big enough to have a dedicated platform effort, small enough to move without a multi-year migration plan — might be pushing furthest into newer OTel-native tooling. + +_**Note**: This is an interesting observation and a hypothesis, not a confirmed finding: with 10–34 respondents per band, none of these gaps is big enough for a survey this size to confirm._ + +### Team type tracks backend choice + +Platform Engineering and SRE teams lean heavily toward OSS Prometheus-compatible backends (Thanos, Cortex, Mimir), while Dev teams lean the other way, toward plain Prometheus. + +Here, the dividing line looks like operational ownership rather than preference. Teams running metrics for a whole organization eventually outgrow a single Prometheus deployment, whereas teams instrumenting their own service generally don't. + +Backend choice by team type — OSS Prometheus-compatible (n = 30), Prometheus (n = 35), PromQL-compatible vendor (n = 8): + +| Team type | OSS Prometheus-compatible | Prometheus | PromQL-compatible vendor | +| ---------------------- | --------------------------- | ------------ | --------------------------- | +| Dev | 24% | 71% | 6% | +| DevOps | 23% | 62% | 15% | +| Observability | 29% | 41% | 29% | +| Platform Engineering | 69% | 31% | 0% | +| SRE | 69% | 31% | 0% | + +_**Note**: Sysadmin (n = 6) and Operations (n = 2) respondents are excluded from this table — both groups are too small to interpret — leaving n = 73 of the 81 respondents. As with the previous breakdown, the per-band numbers here (8 to 35) are too small to draw firm conclusions._ + +## Get involved + +Interoperability is measurably easier than it was two years ago, but the open-ended answers point at concrete gaps — data model differences, resource attributes and metadata, naming and formatting friction. There is still a lot of work to do, on both the OpenTelemetry and the Prometheus side. + +Everyone is welcome to contribute. The discussion happens in the [#otel-prometheus](https://cloud-native.slack.com/archives/C01LSCJBXDZ) channel in the CNCF Slack. diff --git a/public/assets/blog/2026-09-21/application-instrumentation-methods.png b/public/assets/blog/2026-09-21/application-instrumentation-methods.png new file mode 100644 index 0000000000000000000000000000000000000000..f3dbf5b5d2db2bcbc75b82f8cfcf3f1b190cb89f GIT binary patch literal 13097 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 literal 0 HcmV?d00001 diff --git a/public/assets/blog/2026-09-21/application-instrumentation-styles.png b/public/assets/blog/2026-09-21/application-instrumentation-styles.png new file mode 100644 index 0000000000000000000000000000000000000000..a9554f478a5aec1f780f13d149a417542cf0674a GIT binary patch literal 20532 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 literal 0 HcmV?d00001 diff --git a/public/assets/blog/2026-09-21/ease-of-use-average.png b/public/assets/blog/2026-09-21/ease-of-use-average.png new file mode 100644 index 0000000000000000000000000000000000000000..05c3954f58fa999497a87bb5230b232af0de86d0 GIT binary patch literal 8697 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 literal 0 HcmV?d00001 diff --git a/public/assets/blog/2026-09-21/infrastructure-instrumentation-methods.png b/public/assets/blog/2026-09-21/infrastructure-instrumentation-methods.png new file mode 100644 index 0000000000000000000000000000000000000000..578ae8e4a7fb63b9cbce3e1b5a380d56d062d259 GIT binary patch literal 14425 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 PMR7RVy56p{2}t=5pTp_J literal 0 HcmV?d00001 diff --git a/public/assets/blog/2026-09-21/metrics-transformation-tools.png b/public/assets/blog/2026-09-21/metrics-transformation-tools.png new file mode 100644 index 0000000000000000000000000000000000000000..501428073086cf8eeb4ee59a4717757bd7aed001 GIT binary patch literal 13880 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 literal 0 HcmV?d00001 diff --git a/public/assets/blog/2026-09-21/vanilla-stack-breakdown.png b/public/assets/blog/2026-09-21/vanilla-stack-breakdown.png new file mode 100644 index 0000000000000000000000000000000000000000..6580666a95b2d7a154189dd06b8d40f5628988b2 GIT binary patch literal 19698 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 Date: Fri, 18 Sep 2026 18:29:07 +0200 Subject: [PATCH 2/8] Update blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Victoria Nduka <122698422+nwanduka@users.noreply.github.com> Signed-off-by: Andrej Kiripolský <4126171+AndrejKiri@users.noreply.github.com> --- .../posts/2026-09-21-otel-prometheus-interoperability-survey.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md index c476bf693..c4b7bf7cb 100644 --- a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md +++ b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md @@ -48,7 +48,7 @@ _**Note**: The 2024 survey didn't ask respondents whether they worked for an obs Prometheus exporters are the most common single instrumentation method for infrastructure metrics but OTel receivers are close behind. Built-in `/metrics` endpoint, built-in OTLP push, and OpenTelemetry eBPF instrumentation (OBI) follow. -When looking at how these methods combine, the picture is clearly hybrid, not either/or. Nearly half of respondents are mixing Prometheus and OTel instrumentation styles at once for infrastructure metrics, rather than doing a full migration. Only Prometheus style is twice as popular as only OTel style. +When looking at how these methods combine, the picture is clearly hybrid, not either/or. Nearly half of respondents are mixing Prometheus and OTel instrumentation styles at once for infrastructure metrics, rather than doing a full migration. Among respondents using a single instrumentation style, Prometheus-only style is twice as popular as OTel-only style.
Bar chart of infrastructure instrumentation methods: Prometheus exporters 72%, OTel receivers 57%, built-in /metrics endpoint 43%, built-in OTLP push 26%, OBI 12%, other 5%, don't collect 2% From 461080295c8e1643365fde5dd3dcf63afdbc5960 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrej=20Kiripolsk=C3=BD?= <4126171+AndrejKiri@users.noreply.github.com> Date: Fri, 18 Sep 2026 18:29:39 +0200 Subject: [PATCH 3/8] Update blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Victoria Nduka <122698422+nwanduka@users.noreply.github.com> Signed-off-by: Andrej Kiripolský <4126171+AndrejKiri@users.noreply.github.com> --- .../posts/2026-09-21-otel-prometheus-interoperability-survey.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md index c4b7bf7cb..454bf29f4 100644 --- a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md +++ b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md @@ -93,7 +93,7 @@ _**Note**: "Other" combines respondents who do no transformation at all (15%, n= **What would you like us to improve to make OpenTelemetry and Prometheus work better together?** -We received 19 open-ended responses with suggestions on what to improve. Three themes emerged from this data — unifying Prometheus and OTel's data models (attributes/labels), better handling of resource attributes and metadata, and naming and formatting friction — alongside a few individual asks. Prometheus maintainers György "Krajo" Krajcsovits and Arthur Sens went through the responses and addressed each point below: +We received 19 open-ended responses with suggestions on what to improve. Three themes emerged from this data: unification of Prometheus and OTel's data models (attributes/labels), better handling of resource attributes and metadata, and naming and formatting friction. There were also a few individual asks. Prometheus maintainers [György "Krajo" Krajcsovits](https://github.com/krajorama) and [Arthur Sens](https://github.com/ArthurSens) went through the responses and addressed each point below: - Unifying Prometheus and OTel's data models (attributes/labels) - This is a valid ask that we recognize. We will raise it for a discussion at the Prometheus Dev summit in October. From 6d1afc02524890935da434978a759c4ac6ee720f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrej=20Kiripolsk=C3=BD?= <4126171+AndrejKiri@users.noreply.github.com> Date: Fri, 18 Sep 2026 18:30:07 +0200 Subject: [PATCH 4/8] Update blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Victoria Nduka <122698422+nwanduka@users.noreply.github.com> Signed-off-by: Andrej Kiripolský <4126171+AndrejKiri@users.noreply.github.com> --- .../posts/2026-09-21-otel-prometheus-interoperability-survey.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md index 454bf29f4..13237820c 100644 --- a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md +++ b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md @@ -110,7 +110,7 @@ We received 19 open-ended responses with suggestions on what to improve. Three t ### Mid-size organizations may be furthest into OTel-native tooling -In our data, 100–999-employee organizations come out highest on OTel SDK adoption for application metrics and on OTel receiver adoption for infrastructure metrics. eBPF-based instrumentation (OBI) doesn't follow the same pattern — there it's the 1,000+ organizations that stand apart from every smaller band. +In our data, organizations with 100-999 employees have the highest OTel SDK adoption for application metrics and OTel receiver adoption for infrastructure metrics. eBPF-based instrumentation (OBI) doesn't follow the same pattern — there, it's the 1,000+ organizations that stand apart from every smaller band. Adoption by organization size: From 7b2362df8793d46a901b9f07f5cc404acbb88a8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrej=20Kiripolsk=C3=BD?= <4126171+AndrejKiri@users.noreply.github.com> Date: Fri, 18 Sep 2026 18:30:23 +0200 Subject: [PATCH 5/8] Update blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Victoria Nduka <122698422+nwanduka@users.noreply.github.com> Signed-off-by: Andrej Kiripolský <4126171+AndrejKiri@users.noreply.github.com> --- .../posts/2026-09-21-otel-prometheus-interoperability-survey.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md index 13237820c..7f1a85e5f 100644 --- a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md +++ b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md @@ -97,7 +97,7 @@ We received 19 open-ended responses with suggestions on what to improve. Three t - Unifying Prometheus and OTel's data models (attributes/labels) - This is a valid ask that we recognize. We will raise it for a discussion at the Prometheus Dev summit in October. -- Resource attributes and metadata +- Resource attributes and metadata gaps - This should be addressed by the [native metadata design doc](https://docs.google.com/document/d/1yYnyD7oJDvJhzFaigdniq6y302Mvp9gDcJUeAj3pJ0s/edit?tab=t.0#heading=h.5prvoamow70t). One thing that we have to wait for is finishing the OTel Entities spec. - Naming and formatting friction - Several relevant things already exist — the [OpenMetrics 2.0 exposition format](https://prometheus.io/docs/specs/om/open_metrics_spec_2_0/) lets OTel-style names be used directly in code, PromQL already supports UTF-8 metric names, and Prometheus's OTLP receiver has [configurable translation strategies](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#configuration-file). The pieces exist; they're just not the default yet. We have to work on this. From e69fc96ee355d9df4ccf46abc41b512389546b6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrej=20Kiripolsk=C3=BD?= <4126171+AndrejKiri@users.noreply.github.com> Date: Fri, 18 Sep 2026 18:30:38 +0200 Subject: [PATCH 6/8] Update blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Victoria Nduka <122698422+nwanduka@users.noreply.github.com> Signed-off-by: Andrej Kiripolský <4126171+AndrejKiri@users.noreply.github.com> --- .../posts/2026-09-21-otel-prometheus-interoperability-survey.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md index 7f1a85e5f..1787df3bd 100644 --- a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md +++ b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md @@ -145,6 +145,6 @@ _**Note**: Sysadmin (n = 6) and Operations (n = 2) respondents are excluded from ## Get involved -Interoperability is measurably easier than it was two years ago, but the open-ended answers point at concrete gaps — data model differences, resource attributes and metadata, naming and formatting friction. There is still a lot of work to do, on both the OpenTelemetry and the Prometheus side. +Interoperability is measurably easier than it was two years ago, but the open-ended answers point to concrete gaps — data model differences, resource attributes and metadata gaps, and naming and formatting friction. There is still a lot of work to do on both the OpenTelemetry and the Prometheus side. Everyone is welcome to contribute. The discussion happens in the [#otel-prometheus](https://cloud-native.slack.com/archives/C01LSCJBXDZ) channel in the CNCF Slack. From 23cd48890d76c54a0fac4e418c48cf1ba7080f3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrej=20Kiripolsk=C3=BD?= <4126171+AndrejKiri@users.noreply.github.com> Date: Mon, 21 Sep 2026 13:15:49 +0200 Subject: [PATCH 7/8] Add cross-post reference to canonical opentelemetry.io version MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Readers landing on the Prometheus copy should know where the canonical version lives, since the post is published in both places. Signed-off-by: Andrej Kiripolský <4126171+AndrejKiri@users.noreply.github.com> --- .../posts/2026-09-21-otel-prometheus-interoperability-survey.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md index 1787df3bd..88ec3d84b 100644 --- a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md +++ b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md @@ -148,3 +148,5 @@ _**Note**: Sysadmin (n = 6) and Operations (n = 2) respondents are excluded from Interoperability is measurably easier than it was two years ago, but the open-ended answers point to concrete gaps — data model differences, resource attributes and metadata gaps, and naming and formatting friction. There is still a lot of work to do on both the OpenTelemetry and the Prometheus side. Everyone is welcome to contribute. The discussion happens in the [#otel-prometheus](https://cloud-native.slack.com/archives/C01LSCJBXDZ) channel in the CNCF Slack. + +This blog post was published also on [opentelemetry.io/blog](https://opentelemetry.io/blog/2026/otel-prometheus-interoperability/) (canonical version). From 1b047c5385a524eff7a9c706e4f9228036b5d9a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrej=20Kiripolsk=C3=BD?= <4126171+AndrejKiri@users.noreply.github.com> Date: Mon, 21 Sep 2026 13:27:20 +0200 Subject: [PATCH 8/8] Update blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Victoria Nduka <122698422+nwanduka@users.noreply.github.com> Signed-off-by: Andrej Kiripolský <4126171+AndrejKiri@users.noreply.github.com> --- .../posts/2026-09-21-otel-prometheus-interoperability-survey.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md index 88ec3d84b..d6d8ab01d 100644 --- a/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md +++ b/blog/posts/2026-09-21-otel-prometheus-interoperability-survey.md @@ -149,4 +149,4 @@ Interoperability is measurably easier than it was two years ago, but the open-en Everyone is welcome to contribute. The discussion happens in the [#otel-prometheus](https://cloud-native.slack.com/archives/C01LSCJBXDZ) channel in the CNCF Slack. -This blog post was published also on [opentelemetry.io/blog](https://opentelemetry.io/blog/2026/otel-prometheus-interoperability/) (canonical version). +NOTE: This blog post was also published on [opentelemetry.io/blog](https://opentelemetry.io/blog/2026/otel-prometheus-interoperability/) (canonical version).