Skip to content
CommonLayer
Documentation menu
On this page

Metric catalog

Every CommonLayer metric is declared once in commonlayer_observability::metrics::catalog. Labels are low-cardinality enumerations; route is the matched route template and project is a project slug (bounded and curated). Durations are in seconds, sizes in bytes, money in integer minor units.

Source tells where a metric is produced: event metrics are recorded where the event happens (api and worker); business gauges are computed from the database by the scheduler every observability.business_gauges_interval_secs and exposed only by the scheduler; process metrics describe the exposing process itself.

Process and transport

MetricTypeUnitLabelsSourceDescription
commonlayer_build_infogaugeinfoversion, commit, processprocessBuild information of the running process; the value is always 1.
commonlayer_http_requests_totalcounterrequestsmethod, route, statuseventHTTP requests served, by matched route template and status code.
commonlayer_http_request_duration_secondshistogramsecondsmethod, routeeventTime from receiving a request to sending the response headers.
commonlayer_http_requests_in_flightgaugerequests—processHTTP requests currently being handled.
commonlayer_http_response_size_byteshistogrambytesrouteeventSize of HTTP response bodies when known from Content-Length.
commonlayer_grpc_requests_totalcounterrequestsservice, method, codeeventgRPC calls served, by service, method and status code.
commonlayer_grpc_request_duration_secondshistogramsecondsservice, methodeventDuration of gRPC calls.
commonlayer_outbound_requests_totalcounterrequeststarget, outcomeeventOutbound HTTP requests by fixed adapter name (github, osv, nvd, epss, kev, stripe, registry_source, registry_commonlayer, smtp, webhook, oidc) and outcome.
commonlayer_outbound_request_duration_secondshistogramsecondstargeteventDuration of outbound HTTP requests.
commonlayer_db_pool_connectionsgaugeconnectionsstateprocessDatabase pool connections by state (idle, used, max).
commonlayer_db_pool_acquire_duration_secondshistogramseconds—eventTime spent waiting for a database connection.
commonlayer_db_migrations_versiongaugeversion—processHighest applied database migration version.
commonlayer_db_privileged_connectiongaugeinfo—process1 when the process's runtime database connection is a superuser or owns schema objects (it could disable the ledger and audit triggers; threat model O1), else 0.

Authentication and authorization

MetricTypeUnitLabelsSourceDescription
commonlayer_auth_logins_totalcountereventsmethod, outcomeeventLogin attempts by method (password, github, oidc) and outcome.
commonlayer_auth_registrations_totalcountereventsoutcomeeventAccount registrations by outcome.
commonlayer_auth_token_authentications_totalcountereventskind, outcomeeventBearer authentications by kind (api_token, actions_oidc, registry) and outcome.
commonlayer_auth_sessions_activegaugesessions—businessSessions that are neither expired nor revoked.
commonlayer_authz_decisions_totalcountereventspermission, outcomeeventAuthorization decisions of Actor::require by permission and outcome (allowed, denied).
commonlayer_csrf_rejections_totalcounterrequests—eventRequests rejected by the CSRF check.
commonlayer_rate_limited_totalcounterrequestsbucketeventRequests rejected by a rate-limit bucket.
commonlayer_rate_limiter_fallbacks_totalcounterrequestsbucketeventRate-limit decisions taken by the per-process in-memory limiter because the shared limiter (Valkey) failed (threat model O3).

Jobs, events and scheduler

MetricTypeUnitLabelsSourceDescription
commonlayer_jobs_enqueued_totalcounterjobskindeventJobs enqueued (duplicates suppressed by a unique key are not counted).
commonlayer_jobs_finished_totalcounterjobskind, outcomeeventJob attempts finished by outcome: succeeded, retried, failed (terminal error, not retried) or dead (attempts exhausted).
commonlayer_job_duration_secondshistogramsecondskindeventDuration of one job attempt.
commonlayer_jobs_queue_depthgaugejobsqueue, statusbusinessJobs per queue and status (pending, running, dead).
commonlayer_jobs_oldest_pending_age_secondsgaugesecondsqueuebusinessAge of the oldest due pending job per queue.
commonlayer_events_published_totalcountereventskindeventDomain events written to the outbox.
commonlayer_events_undispatchedgaugeevents—businessOutbox events not yet dispatched to subscribers.
commonlayer_scheduler_ticks_totalcountereventstask, outcomeeventScheduler slot claims by task and outcome (enqueued, skipped, error).
commonlayer_scheduler_last_enqueue_timestamp_secondsgaugeunix secondstaskprocessUnix time of the last successful enqueue per scheduled task.

Registry and artifacts

MetricTypeUnitLabelsSourceDescription
commonlayer_registry_requests_totalcounterrequestsaction, kind, outcomeeventRegistry notifications by action (pull, push, delete), artifact kind (image, chart, other) and outcome.
commonlayer_registry_token_requests_totalcounterrequestsprincipal, outcomeeventRegistry token requests by principal (anonymous, promoter) and outcome.
commonlayer_artifact_pulls_totalcountereventsproject, kindeventPulls of promoted artifacts by project slug and artifact kind.
commonlayer_artifact_storage_bytesgaugebyteskindbusinessBytes of promoted artifacts by kind (sum of digest sizes).
commonlayer_object_storage_operations_totalcountereventsoperation, outcomeeventObject storage operations (put, get, head, delete, list, sign, check) by outcome (success, not_found, error; a missing bucket is error).
commonlayer_object_storage_operation_duration_secondshistogramsecondsoperationeventDuration of object storage operations.
commonlayer_artifact_submissions_totalcountereventskind, outcomeeventFinished submissions by artifact kind and outcome (promoted, rejected, failed).
commonlayer_artifact_policy_checks_totalcountereventscheck, outcomeeventVerification policy check results by check id and outcome (pass, fail, waived, not_applicable).
commonlayer_artifact_pipeline_duration_secondshistogramsecondskindeventTime from submission to promotion or rejection.
commonlayer_mirror_operations_totalcountereventsoutcomeeventMirror runs into the CommonLayer registry by outcome.
commonlayer_mirror_duration_secondshistogramseconds—eventDuration of mirror runs.
commonlayer_mirror_bytes_totalcounterbytes—eventBlob bytes copied into the CommonLayer registry.
commonlayer_preservation_checks_totalcountereventsoutcomeeventPreservation checks by outcome (ok, missing_manifest, missing_blob, digest_mismatch, error).
commonlayer_preservation_last_success_timestamp_secondsgaugeunix seconds—businessUnix time of the last preservation run without failures.
commonlayer_builds_totalcountereventsproject, conclusioneventCompleted CI build runs by project slug and conclusion.
commonlayer_artifactsgaugeartifactskind, lifecyclebusinessArtifacts by kind and effective lifecycle.

Security

MetricTypeUnitLabelsSourceDescription
commonlayer_scans_totalcountereventsscanner, trigger, outcomeeventScanner runs by scanner, trigger and outcome.
commonlayer_scan_duration_secondshistogramsecondsscannereventDuration of scanner runs.
commonlayer_scan_oldest_supported_digest_age_secondsgaugeseconds—businessOver supported digests, the age of the oldest newest-successful-scan.
commonlayer_scan_last_success_timestamp_secondsgaugeunix secondsprojectbusinessUnix time of the newest successful scan per project.
commonlayer_vulnerability_feed_last_success_timestamp_secondsgaugeunix secondsfeedbusinessUnix time of the last successful sync per vulnerability feed.
commonlayer_findings_opengaugefindingsseverity, statebusinessUnresolved findings by effective severity and state.
commonlayer_findings_overduegaugefindingsseverity, deadlinebusinessFindings past a deadline (acknowledgement, remediation) without an approved exception.
commonlayer_findings_opened_totalcounterfindingsseverityeventFindings opened or reopened.
commonlayer_findings_resolved_totalcounterfindingsseverity, resolutioneventFindings resolved by resolution.
commonlayer_vulnerability_acknowledgement_secondshistogramsecondsseverityeventTime from detection to acknowledgement.
commonlayer_vulnerability_remediation_secondshistogramsecondsseverityeventTime from detection to resolution by a promoted fix.
commonlayer_security_exceptions_activegaugeexceptionskindbusinessApproved, unexpired vulnerability exceptions by kind.
commonlayer_projects_by_security_stategaugeprojectsstatebusinessProjects by derived security state.

Funding

MetricTypeUnitLabelsSourceDescription
commonlayer_funding_monthly_committed_minorgaugeminor unitscurrencybusinessActive recurring commitments per month, in minor units.
commonlayer_funding_monthly_target_minorgaugeminor unitscurrencybusinessSum of monthly targets of active allocation policies, in minor units.
commonlayer_funding_contributions_totalcountereventskind, outcomeeventContributions by kind (one_time, recurring) and outcome (confirmed, failed, refunded, disputed).
commonlayer_funding_contributed_minor_totalcounterminor unitscurrency, targeteventConfirmed contribution amounts in minor units by currency and target (project, infrastructure).
commonlayer_payments_totalcountereventsprovider, outcomeeventProvider payment events by provider and outcome.
commonlayer_payment_webhooks_totalcounterrequestsprovider, outcomeeventPayment webhooks by provider and outcome (accepted, duplicate, invalid_signature, failed).
commonlayer_payment_webhook_processing_lag_secondshistogramsecondsprovidereventTime from receiving a payment webhook to applying it.
commonlayer_ledger_transactions_totalcountereventskindeventLedger transactions posted by kind (AlreadyPosted replays are not counted).
commonlayer_ledger_balance_minorgaugeminor unitsclass, kind, currencybusinessLedger balances summed over projects by account class, kind and currency.
commonlayer_ledger_reconciliation_mismatchesgaugemismatchescheckbusinessMismatches found by the latest reconciliation run per check (ledger, subledger, provider).
commonlayer_ledger_reconciliation_last_success_timestamp_secondsgaugeunix seconds—businessUnix time of the last reconciliation without mismatches.
commonlayer_funding_cycles_settled_totalcountereventsoutcomeeventCycle settlements by outcome (settled, failed).
commonlayer_payout_obligations_outstanding_minorgaugeminor unitsstatus, currencybusinessOpen payout obligations by status and currency, in minor units.
commonlayer_payouts_totalcountereventsmode, outcomeeventPayouts by mode (dry_run, simulated, live) and outcome.
commonlayer_projects_by_funding_stategaugeprojectsstatebusinessProjects by derived funding state.
commonlayer_projects_by_lifecyclegaugeprojectsstatebusinessProjects by lifecycle state.

Maintenance and notifications

MetricTypeUnitLabelsSourceDescription
commonlayer_maintainers_activegaugemaintainersrolebusinessActive maintainer assignments by role.
commonlayer_eligibility_evaluations_totalcountereventsstateeventEligibility evaluations computed by resulting state.
commonlayer_maintainer_eligibilitygaugemaintainersstatebusinessEvaluations of the last finalized period by state.
commonlayer_maintenance_tasksgaugetaskskind, statusbusinessMaintenance tasks by kind and status.
commonlayer_eligibility_appeals_opengaugeappeals—businessOpen eligibility appeals.
commonlayer_notifications_created_totalcounternotificationsevent_groupeventNotifications created by event group.
commonlayer_notification_deliveries_totalcounternotificationschannel, outcomeeventNotification delivery attempts by channel and outcome.
commonlayer_notification_delivery_duration_secondshistogramsecondschanneleventDuration of one delivery attempt.
commonlayer_github_webhooks_totalcounterrequestsevent, outcomeeventGitHub webhook deliveries by event and outcome.

Repository stewardship

MetricTypeUnitLabelsSourceDescription
commonlayer_repository_backups_totalcountereventstrigger, outcomeeventSource backups of project repositories by trigger (release, scheduled, manual, succession) and outcome (succeeded, failed).
commonlayer_repository_backup_duration_secondshistogramseconds—eventDuration of one source backup: mirror clone, bundle, verification and upload.
commonlayer_repository_backup_oldest_release_gap_secondsgaugeseconds—businessAge of the oldest promoted release whose source commit is in no successful backup; 0 when none.
commonlayer_repository_guardrailsgaugeprojectsoutcomebusinessConnected repositories of operational projects by guardrail outcome: pass (every required check passes), fail (a required check fails), unknown (not evaluated yet).
commonlayer_repository_guardrails_failing_secondsgaugeseconds—businessHow long the longest-failing required guardrail check of an operational project's repository has been failing; 0 when none fails.
commonlayer_repository_access_changes_totalcountereventsaction, outcomeeventCollaborator changes CommonLayer made on project repositories by action (invite, revoke, pending) and outcome (succeeded, failed, pending).
commonlayer_repository_successions_opengaugeprojectsstatebusinessOpen repository succession cases by state (transfer_requested, restore_planned).
commonlayer_repository_successions_overduegaugeprojects—businessOpen repository succession cases past their due date.