SigNoz dashboard
Import the unified RunsOn Flex and Fleet operator dashboard into SigNoz.
The RunsOn SigNoz dashboard gives one operational view of Flex and Fleet. It uses the v3.2 OTLP metric catalog and structured operator events, so it can show job health, capacity, Spot incidents, cost estimates, and control-plane runtime without requiring runner-host telemetry.
Prerequisites#
- RunsOn v3.2 or later.
- OTLP metrics and logs sent to the same SigNoz workspace.
- OTLP log export enabled. Terraform defaults
otel_logs_enabledtotrue; set it explicitly if your module configuration overrides defaults.
Flex publishes service.name=runs-on-flex; Fleet publishes service.name=runs-on-fleet. Both need a deployment.environment resource attribute so the dashboard can filter an environment reliably.
Runner host metrics are optional. The runtime panels describe the Flex and Fleet control planes, not workflow runner processes.
Configure RunsOn#
For a Terraform Flex or Fleet module, configure the OTLP endpoint and authentication headers for your SigNoz ingestion endpoint:
otel_exporter_endpoint = "https://your-signoz-ingest-endpoint"otel_exporter_headers = "signoz-ingestion-key=<your-key>"otel_exporter_temporality = "cumulative"otel_logs_enabled = trueotel_traces_enabled = trueUse the endpoint and header format supplied by your SigNoz deployment. The header is sensitive input; keep it in your usual secret-management path rather than committing it to Terraform.
For a Flex CloudFormation stack, configure OtelExporterEndpoint, OtelExporterHeaders, and OtelExporterTemporality. See OpenTelemetry for the full configuration and signal contract.
Import the dashboard#
- Download
runs-on-operator-dashboard.json↗. - In SigNoz, open Dashboards.
- Create a dashboard and choose Import JSON.
- Import the file, then select an Environment.
- Narrow by product, organization, repository, workflow, lifecycle, pool, or fleet as needed.
The dashboard is intentionally shared. Flex pool panels are empty for Product=fleet; Fleet desired-runner and claim panels are empty for Product=flex. The Spot circuit-breaker view covers both products.
What the dashboard queries#
Time-series panels use native OTLP metrics. Structured logs provide drill-down detail:
job_launchedfor launch volume and runner context;job_summaryfor outcomes, duration, and estimated cost;operator_snapshotfor current state and pricing-cache health;spot_interruptionand normal error logs for incident investigation.
The workflow and job drill-down tables use job_summary. They retain unpriced jobs for run and duration statistics, while cost-only views only use available estimates.
Read cost estimates correctly#
Job cost is an immediate operational estimate, not an AWS invoice. It includes EC2 compute and live root/sticky EBS usage. Retained sticky snapshots appear separately as an hourly upper-bound estimate based on full volume size; AWS bills only changed EBS blocks.
When pricing or durable launch inputs are missing, RunsOn omits cost rather than recording zero. A drill-down group with no priced summaries can therefore display $0 while still containing jobs. Use Cost estimate coverage and Pricing cache entries before using a cost chart to make a billing decision.
The imported dashboard includes visual thresholds but does not create SigNoz alert rules. Create alert rules in SigNoz for the signals and thresholds that match your operating policy.