Skip to content

Prometheus Metrics Catalog

This page is the authoritative per-metric reference for the GET /prometheus endpoint exposed by the Colony monitor process. Every row corresponds to one metric family emitted by formatPrometheus() in packages/monitor/src/prometheus.ts.

The parity test at packages/monitor/src/__tests__/prometheus-doc-parity.test.ts asserts that this table exactly matches the rendered output. If you add, rename, or remove a metric in prometheus.ts, update this table and the test will pass; if you forget, the test fails.

Metric nameTypeDescription
colony_agent_upgaugeWhether the agent health endpoint is reachable (1=up, 0=down).
colony_agent_poll_count_totalcounterTotal poll count reported by the agent.
colony_agent_consecutive_failuresgaugeConsecutive poll failures reported by the agent.
colony_agent_cost_usd_totalcounterCumulative cost in USD reported by the agent.
colony_agent_uptime_secondsgaugeAgent uptime in seconds.
colony_agent_response_time_msgaugeResponse time of the last health poll in milliseconds.
colony_agent_in_flight_issuesgaugeNumber of in-flight issues for the agent.
Metric nameTypeDescription
colony_alerts_activegaugeNumber of active alerts by detector and severity.
Metric nameTypeDescription
colony_pipeline_issues_by_stategaugeCurrent issues per pipeline state and repo.
colony_pipeline_paused_issuesgaugeNumber of currently-paused issues per repo.
colony_intelligence_itemsgaugeIntelligence items by repo and promotion state (pending awaiting review, auto_promoted by retrospector).
colony_tenant_spend_usdgaugeCurrent month spend per tenant in USD.

Pipeline metrics (emitted when metrics is non-empty)

Section titled “Pipeline metrics (emitted when metrics is non-empty)”
Metric nameTypeDescription
colony_pipeline_throughput_per_daygaugeIssues processed per day by repo.
colony_pipeline_median_cycle_time_msgaugeMedian issue cycle time in milliseconds.
colony_pipeline_avg_cost_per_issue_usdgaugeAverage cost per issue in USD.
colony_pipeline_review_pass_rategaugeReview pass rate (0-1).
colony_pipeline_median_time_to_first_pr_msgaugeMedian time from issue open to first PR in ms.
colony_pipeline_median_pr_cycle_time_msgaugeMedian time from PR open to merge in ms.
colony_pipeline_avg_review_cycles_per_prgaugeAverage review cycles per PR.
colony_pipeline_pr_revert_rategaugePR revert rate (0-1).

Worker pool (emitted when workerPool is non-empty)

Section titled “Worker pool (emitted when workerPool is non-empty)”
Metric nameTypeDescription
colony_queue_depthgaugePending task count by repo and task type.
colony_worker_idlegaugeNumber of idle workers by repo.
colony_worker_busygaugeNumber of busy workers by repo.
colony_worker_offlinegaugeNumber of offline workers by repo.
colony_worker_draininggaugeNumber of draining workers by repo.
colony_worker_degradedgaugeNumber of degraded workers by repo.
colony_worker_errorgaugeNumber of workers in error state by repo.
colony_worker_pausedgaugeNumber of paused workers by repo.
colony_stale_leasesgaugeCurrent count of claimed tasks with stale heartbeats by repo.
colony_stalled_leasesgaugeCurrent count of claimed tasks whose executor has stopped making progress, by repo.
colony_projection_queue_depthgaugePending VCS write projections awaiting retry by repo.
colony_worker_build_skewgaugeWhether a worker build_id differs from the declared COLONY_EXPECTED_BUILD (1=skewed, 0=matches).
colony_github_provider_availablegaugeWhether the GitHub provider is available for the repo, based on worker pause state (1=available, 0=rate-limited).

Nomad worker pool (emitted when nomadPools is non-empty)

Section titled “Nomad worker pool (emitted when nomadPools is non-empty)”
Metric nameTypeDescription
colony_nomad_pool_expectedgaugeExpected nomad replica count per tenant (from pool_size config).
colony_nomad_pool_actualgaugeActual heartbeat-fresh nomad replica count per tenant.
colony_nomad_replica_statusgaugeNomad replica count by tenant and status.
Metric nameTypeDescription
colony_projections_failed_totalgaugeVCS projections that permanently failed after exhausting all retries.
colony_dependency_resolution_failures_totalgaugeUnresolved dependency-resolution failures recorded as dead letters after syncIssueState retries were exhausted.
Metric nameTypeDescription
colony_task_duration_secondssummaryTask execution duration in seconds by agent, repo, and outcome.
colony_task_lifecycle_totalgaugeCount of task lifecycle events by type.
colony_worker_heartbeat_age_secondsgaugeSeconds since the last worker heartbeat.
Metric nameTypeDescription
colony_sprint_master_poll_cycle_secondsgaugeDuration of the last sprint-master poll cycle in seconds.

Sprint-master API consumption (emitted when pollCycleApiStats is non-empty)

Section titled “Sprint-master API consumption (emitted when pollCycleApiStats is non-empty)”
Metric nameTypeDescription
colony_cache_hits_per_cyclegaugeETag cache hits in the last sprint-master poll cycle (ops GitHub client).
colony_cache_misses_per_cyclegaugeETag cache misses in the last sprint-master poll cycle (ops GitHub client).
colony_full_sync_count_totalcounterCumulative number of full GitHub syncs performed by sprint-master.
colony_full_sync_discrepancies_totalcounterCumulative issue discrepancies found in full syncs by sprint-master.
colony_webhook_events_received_totalcounterCumulative webhook events routed to the sprint-master cache.
colony_github_rate_limit_remaininggaugeGitHub API rate-limit remaining calls for the repo ops client after the last sprint-master poll cycle.

Stalled issues (emitted when stall alerts are present)

Section titled “Stalled issues (emitted when stall alerts are present)”
Metric nameTypeDescription
colony_issues_stalled_totalgaugeNumber of stalled issues by repo and state.

Task queue (emitted when taskQueueEntries is non-empty)

Section titled “Task queue (emitted when taskQueueEntries is non-empty)”
Metric nameTypeDescription
colony_task_queue_depthgaugeCurrent number of pending and claimed tasks by repo, task type, and status.
colony_task_queue_wait_secondshistogramWait time in seconds from task creation to now for pending tasks, by repo and task type.

Consistency (emitted when findings or repairs exist)

Section titled “Consistency (emitted when findings or repairs exist)”
Metric nameTypeDescription
colony_consistency_findingsgaugeConsistency findings detected by kind and repo.
colony_consistency_repairs_totalcounterConsistency repairs applied by kind and source (manual or auto).

Regression KPIs (emitted when non-skipped results exist)

Section titled “Regression KPIs (emitted when non-skipped results exist)”
Metric nameTypeDescription
colony_health_kpi_currentgaugeCurrent KPI value over the evaluation window.
colony_health_kpi_baselinegaugeBaseline KPI value over the reference window.
colony_health_kpi_relative_deltagaugeRelative delta between current and baseline KPI values ((current-baseline)/|baseline|).
colony_health_kpi_regressedgaugeWhether the KPI has regressed beyond the configured threshold (1=regressed, 0=ok).
colony_health_kpi_sample_sizegaugeSample size of the current evaluation window.

Scope drift (emitted when drift data exists)

Section titled “Scope drift (emitted when drift data exists)”
Metric nameTypeDescription
colony_scope_drift_ratiogaugeAverage drift ratio (unplanned + missed planned files / total) per repo over the scrape window.
colony_scope_drift_unplanned_files_totalgaugeTotal unplanned files touched across PRs in the scrape window.
colony_scope_drift_prs_totalgaugeNumber of PRs exhibiting scope drift in the scrape window.