SevIQ

Telemetry

Setup, schema, and privacy for the console.

The telemetry console is intentionally source-driven. It does not start sampling until a local endpoint, site JSON file, uploaded snapshot, or demo stream is selected.

Open telemetry console

Source modes

  • Local :8087 for a loopback bridge.
  • Site data.json for hosted snapshots.
  • Load JSON for offline inspection.
  • Demo data for UI checks without hardware.

Schema contract

Use stable names and units. Temperatures are degrees Celsius, fan speeds are RPM, power values are watts, and samples should include a timestamp or clear sample order.

Sanitized public-summary sample (CI fixture): /telemetry/fixtures/lhm-public-summary.json — CPU/GPU package temps and power plus named fans under a fixed desk alias. No machine name, drives, or adapters.

Local :8087

Loopback bridge for a full collector shape on this machine only. Expected URL http://127.0.0.1:8087/data.json. The page is HTTPS, so browsers only allow that origin when you explicitly pick Local :8087 (mixed content is intentional and local). Start/stop the public stripped edge with tunnel-dashboard Start-SevIQTelemetryPublic.ps1 / Stop-SevIQTelemetryPublic.ps1; the public HTTPS summary is https://telemetry.seviq.org/data.json, not :8087. CORS on the loopback collector is typically open for GET; mutations must not be exposed.

Privacy boundary

Loopback telemetry stays in the browser. Hosted JSON is public by definition. The console should never require uploading hardware data to use demo or file modes.