Skip to content

Integrations

Integrations are ready-made demands: curated bundles of dashboards and alert rules for a specific technology, published by LeanSignal and importable into your tenant in one step. Instead of building a demand from scratch, you pick an integration, choose how much depth you want, and import.

Because a demand is the set of metrics its dashboards and alerts consume, importing an integration does two things at once:

  1. It gives you dashboards and alerts that work out of the box.
  2. It tells your agents exactly which timeseries to forward — nothing more. See Demand-driven observability.

You never copy or paste JSON. In the LeanSignal app:

  1. Go to Demands and press the ˅ down arrow on the right edge of the Add Demand button — the arrow opens the import menu (the button itself starts an empty demand instead).
  2. Choose Import from catalog… and browse by category to the integration and variant you want — each variant shows its panel and alert counts before you commit.
  3. Confirm with Import demand. LeanSignal fetches the bundle from this docs site and creates the demand, its dashboards, and its alert rules in your tenant with fresh IDs, owned by you.

Every published variant also has a stable slug (for example host-metrics-otel-demand-standard), listed on its integration page. If the catalog is unreachable you can enter the slug directly, and Import from file… lets you import a downloaded bundle instead — that path shows a dry-run preview of what will be created before you confirm.

  • LeanSignal recomputes the demand’s consumed metrics and cost estimate, then pushes the updated demand set to every connected agent — see Architecture. Within seconds your agents start forwarding the timeseries the new dashboards and alerts need.
  • Imported alert rules arrive without a notification channel and start out paused — with nowhere to deliver, they do not evaluate. Create or pick a channel under Alerts → Manage Channels, attach it to each rule, and resume. Rules without a channel are marked with a warning icon in the alerts list.
  • Everything is a normal, editable copy. Rename panels, retune thresholds, or delete what you don’t need — you own it now.

Every dashboard has an Instance filter, so one import covers your whole fleet: view every instance at once, or narrow to a single one. Each integration’s Setup section explains how to populate that instance identity:

  • Application SDKs use the instance label. Set service.instance.id to a stable per-replica name (a hostname or pod name) — it is exported as instance in the OTLP → Prometheus mapping.
  • Prometheus-scraped apps (Ruby, PHP, VictoriaMetrics, and Host Metrics (node_exporter)) use the scrape target’s native instance label — populated automatically.
  • Host Metrics filters on host_name, LeanSignal Agent on leansignal_agent_name, and MySQL on mysql_instance_endpoint — resource labels the collectors attach to every series. PostgreSQL uses the instance label, set on the scraping collector.

Data-point labels used for breakdowns (status, state, operation, …) are always present regardless.

Most integrations ship in three variants so you can trade coverage against cost:

VariantForFootprint
EssentialThe golden signals and page-worthy alerts only.Smallest
StandardA well-rounded overview with warning/critical alerting. Recommended default.Medium
ExtendedDeep, per-subsystem visibility and the full alert set.Largest

The variants are nested — Standard is a superset of Essential, Extended a superset of Standard — so you can start small and re-import a larger variant as a new demand when you need more depth.

Every integration follows the same shape — Overview → Prerequisites → Setup → Logs and traces → Demands. The ready-made demands are built on OpenTelemetry metrics; each page’s Logs and traces section covers sending those signals to the gateway too (they become demanded through the dashboards you build — see Logs and Traces). The chips on each card show panel · alert counts per variant.

Infrastructure

Application runtimes

Databases

More integrations are on the way.

Was this page helpful?