- Created `StellaOps.TestKit.Tests` project for unit tests related to determinism. - Implemented `DeterminismManifestTests` to validate deterministic output for canonical bytes and strings, file read/write operations, and error handling for invalid schema versions. - Added `SbomDeterminismTests` to ensure identical inputs produce consistent SBOMs across SPDX 3.0.1 and CycloneDX 1.6/1.7 formats, including parallel execution tests. - Updated project references in `StellaOps.Integration.Determinism` to include the new determinism testing library.
1.9 KiB
1.9 KiB
Console telemetry
Purpose
- Capture console performance, security signals, and offline behavior.
Metrics
- ui_route_render_seconds{route,tenant,device}
- ui_request_duration_seconds{service,method,status,tenant}
- ui_filter_apply_total{route,filter,tenant}
- ui_tenant_switch_total{fromTenant,toTenant,trigger}
- ui_offline_banner_seconds{reason,tenant}
- ui_dpop_failure_total{endpoint,reason}
- ui_fresh_auth_prompt_total{action,tenant}
- ui_fresh_auth_failure_total{action,reason}
- ui_download_manifest_refresh_seconds{tenant,channel}
- ui_download_export_queue_depth{tenant,artifactType}
- ui_download_command_copied_total{tenant,artifactType}
- ui_telemetry_batch_failures_total{transport,reason}
- ui_telemetry_queue_depth{priority,tenant}
Logs
- Categories: ui.action, ui.tenant.switch, ui.download.commandCopied, ui.security.anomaly, ui.telemetry.failure.
- Core fields: timestamp, level, action, route, tenant, subject, correlationId, offlineMode.
- PII is scrubbed; user identifiers are hashed.
Traces
- ui.route.transition, ui.api.fetch, ui.sse.stream, ui.telemetry.batch, ui.policy.action.
- W3C traceparent propagated through the gateway for cross-service stitching.
Feature flags and config
- CONSOLE_METRICS_ENABLED, CONSOLE_METRICS_VERBOSE, CONSOLE_LOG_LEVEL.
- OTEL_EXPORTER_OTLP_ENDPOINT and OTEL_EXPORTER_OTLP_HEADERS.
- CONSOLE_TELEMETRY_SSE_ENABLED to expose /console/telemetry.
Offline workflow
- Metrics scraped locally and stored with offline bundles.
- OTLP batches queue locally and expose ui_telemetry_queue_depth.
- Retain telemetry bundles for audit; export Grafana JSON with bundles.
Alerting hints
- ConsoleLatencyHigh when ui_route_render_seconds p95 exceeds target.
- BackendLatencyHigh when ui_request_duration_seconds spikes.
- TenantSwitchFailures when ui_dpop_failure_total increases.
- DownloadsBacklog when ui_download_export_queue_depth grows.
- TelemetryExportErrors when ui_telemetry_batch_failures_total > 0.