From 6b7ec6fc856e61ac3b2f3cb67382595cdd1a3d10 Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Fri, 20 Mar 2026 13:15:03 -0400 Subject: [PATCH 01/12] docs: Explanation - pin workloads to 0.130 --- docs/explanation/otelcol-track2-v0.130.0-pin.md | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 docs/explanation/otelcol-track2-v0.130.0-pin.md diff --git a/docs/explanation/otelcol-track2-v0.130.0-pin.md b/docs/explanation/otelcol-track2-v0.130.0-pin.md new file mode 100644 index 00000000..73dd9d09 --- /dev/null +++ b/docs/explanation/otelcol-track2-v0.130.0-pin.md @@ -0,0 +1,9 @@ +# Opentelemetry-collector pinned to v0.130 in tracks 2 and 3 + +## Context + +The opentelemetry-collector charms (K8s and VM) use the [opentelemetry-collector-contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib) as their workload, which is rapidly evolving. The contrib repo maintainers decided to drop support for the `lokiexporter` in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating users can migrate to the OTLP exporters. + +## Why does this only apply to tracks 2 and 3? + +The logging integrations for the `opentelemetry-collector` charms in tracks `2` and `3` rely on the `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in `26.04`. The objective is to have support for OTLP ecosystem-wide by the end of `26.10` and to deprecate Loki Push API feature i.e., `logging` endpoint in track `3`. Support will then be fully dropped in track `4`, in which the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. From d3cd582e23ab4549e35ca456c6be61d76eab436b Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Fri, 20 Mar 2026 15:21:17 -0400 Subject: [PATCH 02/12] chore: add doc to index --- docs/explanation/index.rst | 1 + ...elcol-track2-v0.130.0-pin.md => otelcol-track2-v0.130-pin.md} | 0 2 files changed, 1 insertion(+) rename docs/explanation/{otelcol-track2-v0.130.0-pin.md => otelcol-track2-v0.130-pin.md} (100%) diff --git a/docs/explanation/index.rst b/docs/explanation/index.rst index 0a435d26..0f4c06b7 100644 --- a/docs/explanation/index.rst +++ b/docs/explanation/index.rst @@ -48,6 +48,7 @@ into your observability strategy or when designing integrations. Telemetry Labels Opentelemetry Protocol (OTLP) Juju Topology Labels Data Integrity + Opentelemetry Collector Tracks 2 and 3 Pinned to upstream v0.130 Alerting & rules ================= diff --git a/docs/explanation/otelcol-track2-v0.130.0-pin.md b/docs/explanation/otelcol-track2-v0.130-pin.md similarity index 100% rename from docs/explanation/otelcol-track2-v0.130.0-pin.md rename to docs/explanation/otelcol-track2-v0.130-pin.md From bb27b352bf8336ae174b46a72e3e60ed8f409e93 Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Fri, 20 Mar 2026 15:39:04 -0400 Subject: [PATCH 03/12] Update docs/explanation/otelcol-track2-v0.130-pin.md Co-authored-by: Yanisa Haley Scherber Signed-off-by: Michael Thamm --- docs/explanation/otelcol-track2-v0.130-pin.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/explanation/otelcol-track2-v0.130-pin.md b/docs/explanation/otelcol-track2-v0.130-pin.md index 73dd9d09..0ce0127b 100644 --- a/docs/explanation/otelcol-track2-v0.130-pin.md +++ b/docs/explanation/otelcol-track2-v0.130-pin.md @@ -6,4 +6,4 @@ The opentelemetry-collector charms (K8s and VM) use the [opentelemetry-collector ## Why does this only apply to tracks 2 and 3? -The logging integrations for the `opentelemetry-collector` charms in tracks `2` and `3` rely on the `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in `26.04`. The objective is to have support for OTLP ecosystem-wide by the end of `26.10` and to deprecate Loki Push API feature i.e., `logging` endpoint in track `3`. Support will then be fully dropped in track `4`, in which the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. +The logging integrations for the `opentelemetry-collector` charms in tracks 2 and 3 rely on `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in 26.04. The objective is to have support for OTLP ecosystem-wide by the end of 26.10 and to deprecate Loki Push API feature (`logging` endpoint) in track 3. Support will then be fully dropped in track 4, and the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. From 8e9786a9882c105dc86672ef6e9fc1ca50034c74 Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Fri, 20 Mar 2026 15:39:16 -0400 Subject: [PATCH 04/12] Update docs/explanation/otelcol-track2-v0.130-pin.md Co-authored-by: Yanisa Haley Scherber Signed-off-by: Michael Thamm --- docs/explanation/otelcol-track2-v0.130-pin.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/explanation/otelcol-track2-v0.130-pin.md b/docs/explanation/otelcol-track2-v0.130-pin.md index 0ce0127b..49e2dd27 100644 --- a/docs/explanation/otelcol-track2-v0.130-pin.md +++ b/docs/explanation/otelcol-track2-v0.130-pin.md @@ -2,7 +2,7 @@ ## Context -The opentelemetry-collector charms (K8s and VM) use the [opentelemetry-collector-contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib) as their workload, which is rapidly evolving. The contrib repo maintainers decided to drop support for the `lokiexporter` in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating users can migrate to the OTLP exporters. +The Opentelemetry Collector charms (K8s and VM) use the [opentelemetry-collector-contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib) as their workload, which is rapidly evolving. The `contrib` repository maintainers dropped support for `lokiexporter` in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating that users can migrate to the OTLP exporters instead. ## Why does this only apply to tracks 2 and 3? From 3d73791fe8c16f12ed3c9963cbbe229a59014499 Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Fri, 20 Mar 2026 15:39:24 -0400 Subject: [PATCH 05/12] Update docs/explanation/otelcol-track2-v0.130-pin.md Co-authored-by: Yanisa Haley Scherber Signed-off-by: Michael Thamm --- docs/explanation/otelcol-track2-v0.130-pin.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/explanation/otelcol-track2-v0.130-pin.md b/docs/explanation/otelcol-track2-v0.130-pin.md index 49e2dd27..1aba3756 100644 --- a/docs/explanation/otelcol-track2-v0.130-pin.md +++ b/docs/explanation/otelcol-track2-v0.130-pin.md @@ -1,4 +1,4 @@ -# Opentelemetry-collector pinned to v0.130 in tracks 2 and 3 +# Opentelemetry Collector pinned in COS tracks 2 and 3 ## Context From 892da7fd38ba81539b5d5f205e827838331406cf Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Fri, 20 Mar 2026 15:43:33 -0400 Subject: [PATCH 06/12] chore --- docs/explanation/otelcol-track2-v0.130-pin.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/explanation/otelcol-track2-v0.130-pin.md b/docs/explanation/otelcol-track2-v0.130-pin.md index 1aba3756..7d1a5d1f 100644 --- a/docs/explanation/otelcol-track2-v0.130-pin.md +++ b/docs/explanation/otelcol-track2-v0.130-pin.md @@ -1,9 +1,11 @@ # Opentelemetry Collector pinned in COS tracks 2 and 3 +In COS tracks 2 and 3, the Opentelemetry Collector charms are pinned to version 0.130. This is because the upstream `opentelemetry-collector-contrib` [project](https://github.com/open-telemetry/opentelemetry-collector-contrib) dropped support for Loki exporter. + ## Context The Opentelemetry Collector charms (K8s and VM) use the [opentelemetry-collector-contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib) as their workload, which is rapidly evolving. The `contrib` repository maintainers dropped support for `lokiexporter` in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating that users can migrate to the OTLP exporters instead. ## Why does this only apply to tracks 2 and 3? -The logging integrations for the `opentelemetry-collector` charms in tracks 2 and 3 rely on `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in 26.04. The objective is to have support for OTLP ecosystem-wide by the end of 26.10 and to deprecate Loki Push API feature (`logging` endpoint) in track 3. Support will then be fully dropped in track 4, and the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. +The logging integrations for the `opentelemetry-collector` charms in tracks 2 and 3 rely on `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in 26.04. The objective is to have support for OTLP ecosystem-wide by the end of 26.10 and to deprecate the Loki Push API feature (`logging` endpoint) in track 3. Support will then be fully dropped in track 4, and the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. From 8b63bbd1a4ffd671232cda7f4f0156d43ace61c2 Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Fri, 20 Mar 2026 16:03:27 -0400 Subject: [PATCH 07/12] chore: wordlist --- docs/.custom_wordlist.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/.custom_wordlist.txt b/docs/.custom_wordlist.txt index dd939b60..08487175 100644 --- a/docs/.custom_wordlist.txt +++ b/docs/.custom_wordlist.txt @@ -21,6 +21,7 @@ CMRs config configs contextualize +contrib cpu cryptographic cryptographically From 194239651b34907b4aa6455e4e95ba650409ceca Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Mon, 23 Mar 2026 16:51:50 -0400 Subject: [PATCH 08/12] chore: move to release notes --- docs/explanation/index.rst | 1 - docs/explanation/otelcol-track2-v0.130-pin.md | 11 ----------- docs/reference/release-notes.md | 5 +++-- 3 files changed, 3 insertions(+), 14 deletions(-) delete mode 100644 docs/explanation/otelcol-track2-v0.130-pin.md diff --git a/docs/explanation/index.rst b/docs/explanation/index.rst index 073c47c7..c1a82124 100644 --- a/docs/explanation/index.rst +++ b/docs/explanation/index.rst @@ -46,7 +46,6 @@ into your observability strategy or when designing integrations. Telemetry Flow Telemetry Correlation Telemetry Labels - Opentelemetry Protocol (OTLP) Juju Topology Labels Data Integrity Opentelemetry Collector Tracks 2 and 3 Pinned to upstream v0.130 diff --git a/docs/explanation/otelcol-track2-v0.130-pin.md b/docs/explanation/otelcol-track2-v0.130-pin.md deleted file mode 100644 index 7d1a5d1f..00000000 --- a/docs/explanation/otelcol-track2-v0.130-pin.md +++ /dev/null @@ -1,11 +0,0 @@ -# Opentelemetry Collector pinned in COS tracks 2 and 3 - -In COS tracks 2 and 3, the Opentelemetry Collector charms are pinned to version 0.130. This is because the upstream `opentelemetry-collector-contrib` [project](https://github.com/open-telemetry/opentelemetry-collector-contrib) dropped support for Loki exporter. - -## Context - -The Opentelemetry Collector charms (K8s and VM) use the [opentelemetry-collector-contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib) as their workload, which is rapidly evolving. The `contrib` repository maintainers dropped support for `lokiexporter` in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating that users can migrate to the OTLP exporters instead. - -## Why does this only apply to tracks 2 and 3? - -The logging integrations for the `opentelemetry-collector` charms in tracks 2 and 3 rely on `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in 26.04. The objective is to have support for OTLP ecosystem-wide by the end of 26.10 and to deprecate the Loki Push API feature (`logging` endpoint) in track 3. Support will then be fully dropped in track 4, and the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. diff --git a/docs/reference/release-notes.md b/docs/reference/release-notes.md index 862fd799..28d51a13 100644 --- a/docs/reference/release-notes.md +++ b/docs/reference/release-notes.md @@ -21,8 +21,9 @@ COS 2 is compatible with Juju v3.6+. When deployed using terraform, Juju v3.6.11 - [Telemetry correlation](../explanation/telemetry-correlation.md) is now automatically enabled when you deploy COS using the Terraform module. - **Grafana v12**. We upgraded the workload version from Grafana 9 to Grafana 12. A thorough review of Grafana's breaking changes and how they affect us is available [on Discourse](https://discourse.charmhub.io/t/cos-will-start-using-grafana-12-what-changed/18868). -- **Opentelemetry collector**. Charmed opentelemetry-collector was released. The charm was designed to be a drop-in replacement for - the grafana-agent charm (upstream grafana-agent is EOL since November 2025, and we will support charmed grafana-agent until July 2026). +- **Opentelemetry collector**. Charmed opentelemetry-collector was released. The charm was designed to be a drop-in replacement for the grafana-agent charm (upstream grafana-agent is EOL since November 2025, and we will support charmed grafana-agent until July 2026). + - the workload is pinned to version 0.130 because the upstream `opentelemetry-collector-contrib` [project](https://github.com/open-telemetry/opentelemetry-collector-contrib) dropped support for Loki exporter in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating that users can migrate to the OTLP exporters instead. + - The logging integrations for the `opentelemetry-collector` charms rely on `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in 26.04. The objective is to have support for OTLP ecosystem-wide by the end of 26.10 and to deprecate the Loki Push API feature (`logging` endpoint). Support will then be fully dropped in track 27.04, and the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. - `extra_alert_labels` config option. A new config option in grafana-agent and opentelemetry-collector enabled adding custom labels to alert rules. Custom labels are useful for differentiating alerts coming from sites with different SLAs. - **API links in catalogue-k8s**. The cards in catalogue-k8s now support extra links for documentation and APIs. COS charms now provide links to the workload API, making it easier to locate ingress URLs for workloads without a web UI. From d39556b590cba9baffa10ddda3f5cfb481252462 Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Mon, 23 Mar 2026 16:52:14 -0400 Subject: [PATCH 09/12] chore: move to release notes --- docs/explanation/index.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/explanation/index.rst b/docs/explanation/index.rst index c1a82124..6377d020 100644 --- a/docs/explanation/index.rst +++ b/docs/explanation/index.rst @@ -46,8 +46,8 @@ into your observability strategy or when designing integrations. Telemetry Flow Telemetry Correlation Telemetry Labels + Opentelemetry Protocol (OTLP) Juju Topology Labels Data Integrity - Opentelemetry Collector Tracks 2 and 3 Pinned to upstream v0.130 Alerting & rules ================= From b08216b10b2f78e0520fa6296ce6a31cec09365f Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Mon, 23 Mar 2026 16:54:17 -0400 Subject: [PATCH 10/12] chore --- docs/reference/release-notes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/release-notes.md b/docs/reference/release-notes.md index 28d51a13..2375a81f 100644 --- a/docs/reference/release-notes.md +++ b/docs/reference/release-notes.md @@ -23,7 +23,7 @@ COS 2 is compatible with Juju v3.6+. When deployed using terraform, Juju v3.6.11 - **Grafana v12**. We upgraded the workload version from Grafana 9 to Grafana 12. A thorough review of Grafana's breaking changes and how they affect us is available [on Discourse](https://discourse.charmhub.io/t/cos-will-start-using-grafana-12-what-changed/18868). - **Opentelemetry collector**. Charmed opentelemetry-collector was released. The charm was designed to be a drop-in replacement for the grafana-agent charm (upstream grafana-agent is EOL since November 2025, and we will support charmed grafana-agent until July 2026). - the workload is pinned to version 0.130 because the upstream `opentelemetry-collector-contrib` [project](https://github.com/open-telemetry/opentelemetry-collector-contrib) dropped support for Loki exporter in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating that users can migrate to the OTLP exporters instead. - - The logging integrations for the `opentelemetry-collector` charms rely on `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in 26.04. The objective is to have support for OTLP ecosystem-wide by the end of 26.10 and to deprecate the Loki Push API feature (`logging` endpoint). Support will then be fully dropped in track 27.04, and the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. + - The logging integrations for the `opentelemetry-collector` charms rely on `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in 26.04. The objective is to have support for OTLP ecosystem-wide by the end of 26.10 and to deprecate the Loki Push API feature (`logging` endpoint). Support will then be fully dropped in 27.04, and the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. - `extra_alert_labels` config option. A new config option in grafana-agent and opentelemetry-collector enabled adding custom labels to alert rules. Custom labels are useful for differentiating alerts coming from sites with different SLAs. - **API links in catalogue-k8s**. The cards in catalogue-k8s now support extra links for documentation and APIs. COS charms now provide links to the workload API, making it easier to locate ingress URLs for workloads without a web UI. From 54c68bf76214aef377a584e9cf59b2c1f93a35fa Mon Sep 17 00:00:00 2001 From: Michael Thamm Date: Fri, 27 Mar 2026 10:02:41 -0400 Subject: [PATCH 11/12] Update docs/reference/release-notes.md Co-authored-by: Sina P <55766091+sinapah@users.noreply.github.com> Signed-off-by: Michael Thamm --- docs/reference/release-notes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/release-notes.md b/docs/reference/release-notes.md index 4111e199..1a6daf23 100644 --- a/docs/reference/release-notes.md +++ b/docs/reference/release-notes.md @@ -28,7 +28,7 @@ COS 2 is compatible with Juju v3.6+. When deployed using terraform, Juju v3.6.11 Terraform module. - **Grafana v12**. We upgraded the workload version from Grafana 9 to Grafana 12. A thorough review of Grafana's breaking changes and how they affect us is available [on Discourse](https://discourse.charmhub.io/t/cos-will-start-using-grafana-12-what-changed/18868). - **Opentelemetry collector**. Charmed opentelemetry-collector was released. The charm was designed to be a drop-in replacement for the grafana-agent charm (upstream grafana-agent is EOL since November 2025, and we will support charmed grafana-agent until July 2026). - - the workload is pinned to version 0.130 because the upstream `opentelemetry-collector-contrib` [project](https://github.com/open-telemetry/opentelemetry-collector-contrib) dropped support for Loki exporter in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating that users can migrate to the OTLP exporters instead. + - The workload is pinned to version 0.130 because the upstream `opentelemetry-collector-contrib` [project](https://github.com/open-telemetry/opentelemetry-collector-contrib) dropped support for Loki exporter in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating that users can migrate to the OTLP exporters instead. - The logging integrations for the `opentelemetry-collector` charms rely on `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in 26.04. The objective is to have support for OTLP ecosystem-wide by the end of 26.10 and to deprecate the Loki Push API feature (`logging` endpoint). Support will then be fully dropped in 27.04, and the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. - `extra_alert_labels` config option. A new config option in grafana-agent and opentelemetry-collector enabled adding custom labels to alert rules. Custom labels are useful for differentiating alerts coming from sites with different SLAs. - **API links in catalogue-k8s**. The cards in catalogue-k8s now support extra links for documentation and APIs. COS charms now provide links to the workload API, making it easier to locate ingress URLs From 360e49fb54647c1c18c468b58e3d4511dea86a5e Mon Sep 17 00:00:00 2001 From: Leon <82407168+sed-i@users.noreply.github.com> Date: Sun, 29 Mar 2026 23:53:55 -0400 Subject: [PATCH 12/12] Fix merge mistake Signed-off-by: Leon <82407168+sed-i@users.noreply.github.com> --- docs/reference/release-notes.md | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/docs/reference/release-notes.md b/docs/reference/release-notes.md index 227ffcc1..0e105b2d 100644 --- a/docs/reference/release-notes.md +++ b/docs/reference/release-notes.md @@ -31,6 +31,8 @@ COS 3 is compatible with Juju v3.6+. ## What's new in COS 3 +- **Opentelemetry collector**. Charmed opentelemetry-collector's workload is pinned to version 0.130 because the upstream `opentelemetry-collector-contrib` [project](https://github.com/open-telemetry/opentelemetry-collector-contrib) dropped support for Loki exporter in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating that users can migrate to the OTLP exporters instead. + - The logging integrations for the `opentelemetry-collector` charms rely on `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in 26.04. The objective is to have support for OTLP ecosystem-wide by the end of 26.10 and to deprecate the Loki Push API feature (`logging` endpoint). Support will then be fully dropped in 27.04, and the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. ### COS components @@ -50,20 +52,6 @@ COS 3 is compatible with Juju v3.6+. ### COS Lite components -- Terraform modules for [COS](https://github.com/canonical/observability-stack/tree/main/terraform/cos) - and [COS Lite](https://github.com/canonical/observability-stack/tree/main/terraform/cos-lite). - As Juju bundles are deprecated, the standard way of deploying COS is now using the - [Juju Terraform provider](https://registry.terraform.io/providers/juju/juju/latest/docs). - - [Telemetry correlation](../explanation/telemetry-correlation.md) is now automatically enabled when you deploy COS using the - Terraform module. -- **Grafana v12**. We upgraded the workload version from Grafana 9 to Grafana 12. A thorough review of Grafana's breaking changes and how they affect us is available [on Discourse](https://discourse.charmhub.io/t/cos-will-start-using-grafana-12-what-changed/18868). -- **Opentelemetry collector**. Charmed opentelemetry-collector was released. The charm was designed to be a drop-in replacement for the grafana-agent charm (upstream grafana-agent is EOL since November 2025, and we will support charmed grafana-agent until July 2026). - - The workload is pinned to version 0.130 because the upstream `opentelemetry-collector-contrib` [project](https://github.com/open-telemetry/opentelemetry-collector-contrib) dropped support for Loki exporter in [release v0.131.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.131.0), stating that users can migrate to the OTLP exporters instead. - - The logging integrations for the `opentelemetry-collector` charms rely on `lokiexporter` to send logs to Loki push API endpoints. Loki only recently received upstream support for an OTLP endpoint, and migrating to an OTLP-first ecosystem in COS began in 26.04. The objective is to have support for OTLP ecosystem-wide by the end of 26.10 and to deprecate the Loki Push API feature (`logging` endpoint). Support will then be fully dropped in 27.04, and the `opentelemetry-collector` charms will no longer be pinned to `v0.130`. -- `extra_alert_labels` config option. A new config option in grafana-agent and opentelemetry-collector enabled adding custom labels to alert rules. Custom labels are useful for differentiating alerts coming from sites with different SLAs. -- **API links in catalogue-k8s**. The cards in catalogue-k8s now support extra links for documentation and APIs. COS charms now provide links to the workload API, making it easier to locate ingress URLs -for workloads without a web UI. - ## Notable changes in peripheral charms