Console Observability

This guide is the operations reference for instrumenting and monitoring the Stella Ops Console (the web UI). It catalogs the front-end metrics, logs, and traces the Console emits, the dashboards and alerts operators build from them, the feature flags that gate telemetry, and the workflow for air-gapped sites. Read it before standing up Console dashboards or wiring alert rules.

Audience: Observability Guild, Console Guild, SRE/operators.
Scope: Metrics, logs, traces, dashboards, alerting, feature flags, and offline workflows for the Stella Ops Console (Sprint 23).
Prerequisites: Console deployed with metrics enabled (CONSOLE_METRICS_ENABLED=true) and OTLP exporters configured (OTEL_EXPORTER_OTLP_*).


1 · Instrumentation Overview


2 · Metrics

2.1 Experience & Navigation

MetricTypeLabelsNotes
ui_route_render_secondsHistogramroute, tenant, device (desktop,tablet)Time between route activation and first interactive paint. Target P95 ≤ 1.5 s (cached).
ui_request_duration_secondsHistogramservice, method, status, tenantGateway proxy timing for backend calls performed by the console. Alerts when backend latency degrades.
ui_filter_apply_totalCounterroute, filter, tenantIncrements when a global filter or context chip is applied. Used to track adoption of saved views.
ui_tenant_switch_totalCounterfromTenant, toTenant, trigger (picker, shortcut, link)Emitted after a successful tenant switch; correlates with Authority ui.tenant.switch logs.
ui_offline_banner_secondsHistogramreason (authority, manifest, gateway), tenantDuration of offline banner visibility; integrate with air-gap SLAs.

2.2 Security & Session

MetricTypeLabelsNotes
ui_dpop_failure_totalCounterendpoint, reason (nonce, jkt, clockSkew)Raised when DPoP validation fails; pair with Authority audit trail.
ui_fresh_auth_prompt_totalCounteraction (token.revoke, policy.activate, client.create), tenantCounts fresh-auth modals; backlog above baseline indicates workflow friction.
ui_fresh_auth_failure_totalCounteraction, reason (timeout,cancelled,auth_error)Optional metric (set CONSOLE_FRESH_AUTH_METRICS=true when feature flag lands).

2.3 Downloads & Offline Kit

MetricTypeLabelsNotes
ui_download_manifest_refresh_secondsHistogramtenant, channel (edge,stable,airgap)Time to fetch and verify downloads manifest. Target < 3 s.
ui_download_export_queue_depthGaugetenant, artifactType (sbom,policy,attestation,console)Mirrors /console/downloads queue depth; triggers when offline bundles lag.
ui_download_command_copied_totalCountertenant, artifactTypeIncrements when users copy CLI commands from the UI. Useful to observe CLI parity adoption.

2.4 Telemetry Emission & Errors

MetricTypeLabelsNotes
ui_telemetry_batch_failures_totalCountertransport (otlp-http,otlp-grpc), reasonEmitted by OTLP bridge when batches fail. Enable via CONSOLE_METRICS_VERBOSE=true.
ui_telemetry_queue_depthGaugepriority (normal,high), tenantBrowser-side buffer depth; monitor for spikes under degraded collectors.

Scraping tips:

  • Enable /metrics via CONSOLE_METRICS_ENABLED=true.
  • Set OTEL_EXPORTER_OTLP_ENDPOINT=https://otel.collector:4318 and relevant headers (OTEL_EXPORTER_OTLP_HEADERS=authorization=Bearer <token>).
  • For air-gapped sites, point the exporter to the Offline Kit collector (localhost:4318) and forward the metrics snapshot using stella offline bundle metrics.

3 · Logs


4 · Traces


5 · Dashboards

5.1 Experience Overview

Panels:

5.2 Downloads & Offline Kit

5.3 Security & Session

Capture screenshots for Grafana once dashboards stabilise (docs/assets/ui/observability/*.png). Replace placeholders before releasing the doc.


6 · Alerting

AlertConditionSuggested Action
ConsoleLatencyHighui_route_render_seconds_bucket{le="1.5"} drops below 0.95 for 3 intervalsInspect route splits, check backend latencies, review CDN cache.
BackendLatencyHighui_request_duration_seconds_sum / ui_request_duration_seconds_count > 1 s for any serviceCorrelate with gateway/service dashboards; escalate to owning guild.
TenantSwitchFailuresIncrease in ui_dpop_failure_total or ui.security.anomaly (tenant mismatch) > 3/minValidate Authority issuer, check clock skew, confirm tenant config.
FreshAuthLoopui_fresh_auth_prompt_total spikes with matching ui_fresh_auth_failure_totalReview Authority /fresh-auth endpoint, session timeout config, UX regressions.
OfflineBannerLongui_offline_banner_seconds P95 > 120 sInvestigate Authority/gateway availability; verify Offline Kit freshness.
DownloadsBacklogui_download_export_queue_depth > 5 for 10 min OR queue age > alert thresholdPing Downloads service, ensure manifest pipeline (DOWNLOADS-CONSOLE-23-001) is healthy.
TelemetryExportErrorsui_telemetry_batch_failures_total > 0 for ≥5 minCheck collector health, credentials, or TLS trust.

Integrate alerts with Notifier (ui.alerts) or existing Ops channels. Tag incidents with component=console for correlation.


7 · Feature Flags & Configuration

Flag / Env VarPurposeDefault
CONSOLE_FEATURE_FLAGSEnables UI modules (runs, downloads, policies, telemetry). Telemetry panel requires telemetry.runs,downloads,policies
CONSOLE_METRICS_ENABLEDExposes /metrics for Prometheus scrape.true
CONSOLE_METRICS_VERBOSEEmits additional batching metrics (ui_telemetry_*).false
CONSOLE_LOG_LEVELMinimum log level (Information, Debug). Use Debug for incident sampling.Information
CONSOLE_METRICS_SAMPLING (planned)Controls front-end span sampling ratio. Document once released.0.05
OTEL_EXPORTER_OTLP_ENDPOINTCollector URL; supports HTTPS.unset
OTEL_EXPORTER_OTLP_HEADERSComma-separated headers (auth).unset
OTEL_EXPORTER_OTLP_INSECUREAllow HTTP (dev only).false
OTEL_SERVICE_NAMEService tag for traces/logs. Set to stellaops-console.auto
CONSOLE_TELEMETRY_SSE_ENABLEDEnables /console/telemetry SSE feed for dashboards.true

Feature flag changes should be tracked in release notes and mirrored in the UI guide (navigation and workflow expectations).


8 · Offline / Air-Gapped Workflow


9 · Compliance Checklist


10 · References


Last updated: 2025-10-28 (Sprint 23).