Skip to content

LeanSignal API

Watch the LeanSignal control plane itself — what your demand set costs, which filters collect and store the most series, how much each signal’s store holds, synthetic check outcomes, and the API’s own process health — with curated dashboards you import in one step.

There is nothing to enable. The LeanSignal API monitors itself out of the box: it pushes its own metrics (leansignal_leanapi_*) through the normal metrics pipeline, so they are indexed and demandable like any application metric. Importing one of the demands below is exactly what forwards them to your central dataplane.

This demand is also the delivery vehicle for per-filter accounting: the leansignal_leanapi_filter_collected_series and leansignal_leanapi_filter_stored_series gauges carry one series per filter in your demand set. Import it and “which rule costs the most?” becomes a chartable, alertable timeseries — the same numbers the Demands pages show, with 30 days of history.

  • A LeanSignal agent installed and connected — that is the only requirement. Self-telemetry is collected automatically; there is nothing to enable. If you haven’t deployed the agent yet, follow Install the agent (source: LeanSignal/leansignal-agent). It should show as Connected under Agents in the LeanSignal app.
  • Editor or admin role in the LeanSignal app (importing a demand creates dashboards and alert rules).

Nothing to configure. The LeanSignal API emits its own telemetry continuously — storage gauges measured against your tenant’s own stores, per-filter accounting, demand-set size and cost, synthetic check results, and process health. The metrics ride the platform’s normal pipeline and are demandable from the moment your tenant exists.

The only step is importing a demand below — that is what selects the leansignal_leanapi_* series into your central dataplane, exactly like any other metric.

To confirm before importing, open Metrics in the LeanSignal app, switch the source to Available, and search for leansignal_leanapi — the gauges are there, waiting to be demanded.

This integration is metrics-only by nature: the LeanSignal API’s own logs and traces go to the platform operator’s monitoring, not to your tenant’s stores — there is nothing for a tenant demand to select. What your tenant gets is the leansignal_leanapi_* metric family charted on this page; for your own workloads’ logs and traces, see the runtime integrations.

LeanSignal API ships as a ready-made demand in three variants. You don’t copy any JSON — in the LeanSignal app go to Demands, press the ˅ arrow on the Add Demand button (the arrow opens the import menu), choose Import from catalog…, and pick the variant. Each variant below lists the slug that identifies its published bundle. See Integrations for the full import flow.

The variants are nested — Standard is a superset of Essential, Extended a superset of Standard. Pick whichever is closest to what you need and treat it as a starting point: after import everything is a normal, editable copy, so retune thresholds, add or drop panels, and adjust queries for your environment — your edits reshape the demand automatically. Start small and re-import a larger variant later if you outgrow it.

What the platform demands. 1 dashboard · 12 panels · 0 alerts — per-filter collection/storage, demand-set size, and connected agents.

Import this variant from the catalog. Its demand slug:

Demand slug
leansignal-leanapi-otel-demand-essential

Dashboard — Stored time series, Stored log volume, Spans ingested, Traces stored (bytes), Log ingest (bytes/sec), Trace ingest (bytes/sec), Check status, Check latency, Collected series (active demand), Stored series (dataplane), Active demand-set size, and Connected agents.

Alerts (0)

AlertSeverityFires when

Review the bundle JSON →

Each variant imports one LeanSignal API dashboard, its panels grouped into collapsible sections. Every dashboard carries an Instance filter (on the service_instance_id label), so one import covers the whole fleet — view every instance at once, or focus on one. Legends are sortable tables showing last/mean/max per series, so the outlier instance stands out. Dashboards are demand-driven: importing one tells your agents to forward exactly the timeseries its panels query, and nothing else. Panels are ordinary Perses panels — edit queries, add panels, or retune them after import, and your changes reshape the demand automatically.

Thresholds are conservative starting points — tune them to your workload.

Was this page helpful?