Glossary

Terms and concepts specific to COS.

Catalogue

The Catalogue charm provides a service-discovery landing page for COS, listing integrated applications and their ingress URLs. Deployed as a core component of both COS and COS Lite.

Charmed alert rules

Alert rules bundled inside a charmed operator and automatically forwarded to Prometheus or Loki when the charm is related to COS. Rule expressions are injected with Juju topology matchers at relation time, identifying them with that application’s telemetry. See Charmed alert rules.

COS (Canonical Observability Stack)

The full, horizontally-scalable, Kubernetes-native observability suite. Backends (Mimir, Loki, Tempo) use the coordinator/worker pattern. Informally called COS HA. See What is COS?.

COS Alerter

A dedicated Alertmanager instance deployed outside the COS model to receive a heartbeat alert from COS. Fires when the heartbeat stops, signalling that COS’s own alerting pipeline has failed. See Topology.

COS Configuration

A peripheral charm that clones a git repository (via a git-sync workload) and provisions alert rules, dashboards, and scrape targets from it into COS. Enables git-ops–style configuration independently of any charmed operator. See COS components.

COS Lite

A resource-constrained flavor of COS that runs monolithic Loki and Prometheus, without Tempo. Recommended for near-edge and single-node deployments. See What is COS?.

COS Proxy

A peripheral machine charm that bridges NRPE-instrumented workloads to COS by translating their checks into Prometheus time series. A bridge for legacy machine charms that do not yet expose metrics directly. See Telemetry flow.

cos_agent

An all-in-one Juju relation library used by machine charms to ship metrics, logs, dashboards, and alert rules to COS through a subordinate Grafana Agent or OpenTelemetry Collector. Replaces wiring up separate prometheus_scrape, loki_push_api, and grafana_dashboard relations individually in machine contexts. See Integration matrix.

Coordinator/worker pattern

The deployment pattern used by COS backends (Mimir, Loki, Tempo): each backend is split into a coordinator charm + one or more worker charms, each assigned a specific role (e.g. ingester, querier, compactor). Enables independent scaling and pod anti-affinity across nodes. COS Lite uses a monolithic charm instead. See the coordinated workers explanation doc for more information.

Cross-model relation (CMR)

A Juju relation that spans two separate models. Because COS is deployed in its own model, CMRs are the primary mechanism by which workloads in other models — including machine models — send telemetry to COS. See Integration matrix.

Flavor

Informal term for the two COS deployment variants: COS (scalable, HA) and COS Lite (monolithic, resource-constrained). Both share Grafana, Alertmanager, Traefik, and Catalogue. See What is COS?.

Generic alert rules

A minimal set of host-health rules shipped with COS itself, covering unreachable scrape targets, missing metrics, and COS self-health. Relieve charm authors from implementing per-charm host-health alerts. See Generic alert rule groups.

Git-ops alert rules

Alert rules (and dashboards or scrape targets) loaded from an external git repository via the COS Configuration charm. Allows version-controlled, operator-defined rules outside of any charmed operator. See Alert rules.

Juju topology labels

The set of metadata — model name, model UUID, application, unit, charm name — that uniquely identifies the source workload of a telemetry signal within a Juju-managed deployment. Automatically associated with all telemetry by COS charm libraries, enabling filtering and correlating telemetry by model or application without manual instrumentation. See Juju topology and Juju topology labels.

LMA (Logging, Monitoring and Alerting)

The machine-charm–based observability predecessor to COS. COS was designed to address LMA’s operational and architectural limitations: it is Kubernetes-native, Juju-topology-aware, and relation-driven. See Design goals.

Pebble log forwarding

A mechanism by which Kubernetes charm workloads stream logs from their Pebble-managed processes directly to a Loki push endpoint, without a sidecar scraping agent. See Telemetry collection.

Peripheral charm

A charm that integrates with COS but is not part of its core stack — e.g. COS Configuration, COS Proxy, Blackbox Exporter, Prometheus Scrape Config. See COS components.

Self-monitoring

The capability of COS to observe its own components using the same stack it operates. See What is COS?.