Skip to content

docs(admin): document monitoring with Prometheus - #1238

Open
pbleser-oc wants to merge 1 commit into
opencloud-eu:mainfrom
pbleser-oc:feat/1237-monitoring-prometheus
Open

pbleser-oc wants to merge 1 commit into
opencloud-eu:mainfrom
pbleser-oc:feat/1237-monitoring-prometheus

Conversation

@pbleser-oc

Copy link
Copy Markdown
Member

Fixes #1237

Changes

A new admin page, Monitoring with Prometheus (docs/admin/configuration/monitoring.md, listed in the configuration index after Logging). The admin docs had no page about metrics yet. It documents how OpenCloud works today:

  • Where OpenCloud exposes its metrics: the debug endpoint of each service (*_DEBUG_ADDR, path /metrics); in a single OpenCloud process all debug endpoints return the same metrics, so one endpoint is enough; the default address only accepts local connections.
  • OpenCloud Compose: enabling the metrics endpoints with monitoring/monitoring.yml and monitoring/monitoring-collaboration.yml (and the opencloud-net network), and how to check them.
  • Protecting the endpoint with *_DEBUG_TOKEN, sent as a bearer token, and how to generate a random token on Linux and macOS.
  • Prometheus scrape configuration, with and without the token, and how to check that it works.
  • Duration histograms: classic histograms (buckets, _bucket/_count/_sum, example output, the default buckets), native histograms, and how to enable them per Prometheus version (--enable-feature=native-histograms up to 3.7, scrape_native_histograms from 3.8 on).
  • PromQL examples for classic histograms: percentiles, request rate, average, share of requests below a threshold.
  • The proxy's request durations: the native-only opencloud_proxy_request_duration_seconds and its classic fallbacks, with PromQL examples for setups with and without native histograms.
  • A list of all duration histograms with their labels and buckets.

The changes to the histograms from opencloud-eu/opencloud#3817 are documented separately, on top of this page, in #1235.

Checks

pnpm build --locale en, prettier --check and markdownlint-cli2 pass for the changed files (the broken anchors that the build reports are on existing developer pages).

Add the admin page "Monitoring with Prometheus", as OpenCloud works
today: where OpenCloud exposes its metrics (debug servers, one endpoint
per process, the OpenCloud Compose monitoring files, the debug token),
a Prometheus scrape configuration, and the duration histograms: classic
histograms with their buckets and PromQL examples, the native-only
request duration histogram of the proxy with its classic fallbacks, how
to enable native histograms per Prometheus version, and a list of all
duration histograms.

Fixes opencloud-eu#1237
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Qualification

Development

Successfully merging this pull request may close these issues.

Admin docs: monitoring OpenCloud with Prometheus

1 participant