Skip to content
AstorisTheBrave edited this page Jun 21, 2026 · 7 revisions

Argus wiki

Operational Prometheus / OpenTelemetry metrics for discord.py bots, in one line.

from argus import Argus
Argus(bot)

This wiki is the in-depth reference. The README is the quick start; everything below assumes you know discord.py and Prometheus and want the specifics.

Start here

New to Argus? Follow a tutorial end to end:

Pages

  • FAQ - quick answers, including how the dashboard auth token works.
  • Architecture and Invariants - the three layers, the seven invariants, and why they exist.
  • Configuration - every kwarg/env var, precedence, and resolution.
  • Compatibility - discord.py 2.x support and the fork situation.
  • Security - what is exposed, how to gate it, and safe deployment.
  • Metrics Reference - every metric, its kind, labels, and source.
  • Dashboard - the built-in SPA, the SSE snapshot protocol, auth.
  • History and ClickHouse - the per-guild analytical path and the event sink.
  • OTLP - the OpenTelemetry push adapter.
  • Clustering - multi-process deployments and the cluster label.
  • Fleet - the standalone control plane (Global/Fleet/Cluster view).
  • Releasing - release-please, PyPI Trusted Publishing, the GHCR images.
  • Contributing - dev setup, the checks, the DCO.

Mental model

core observes the bot and maintains a backend-neutral metric registry. adapters (Prometheus, OTLP) translate that registry into a backend. exposition serves /metrics and the dashboard on the bot's own aiohttp loop. history is a separate, optional path that drains per-guild events to an OLAP store. Data flows one way: bot -> core -> adapters/exposition; core never imports an adapter.

Clone this wiki locally