github timmo001/system-bridge 5.15.0

one hour ago

Keeps the last 24 hours of readings in the backend, so the web client's graphs no longer start empty when you open a page. Adds graphs for temperatures, power, frequency and fans, and lets you export the history as CSV or JSON from the web client, the CLI and the connectors.

History

  • Keep up to the last 24 hours of the graphed readings in the backend: CPU usage, temperature, frequency, power and load average, memory, swap, battery, system power, network and disk rates, each disk's temperature, each GPU's core and memory load, temperature and power, and each sensor temperature and fan speed.
  • Save the history to data/history.json every 5 minutes and on shutdown, so a restart keeps it. A full day takes about 1.25 MB of memory with two GPUs and fifteen sensors.
  • Add the GET_HISTORY WebSocket event, with an optional since for only newer readings and modules for only some modules' readings.

See Getting history.

Web client

  • Fill the graphs from the backend's history, then add only the newer readings each minute.
  • Add a 1h, 6h and 24h range to every graph, shared across them and remembered, with each graph's average and peak for the range.
  • Add graphs for CPU temperature, power, frequency and load average, GPU memory load, temperature and power, disk temperatures, sensor temperatures, fan speeds and system power, and temperature and power cards on the overview.
  • Add an Export menu to the overview and the module pages. It lists every module as a checkbox, ticked for what the page graphs, and downloads CSV or JSON.
  • Label the time axis in whole seconds, minutes or hours.

See Web client.

CLI

  • Add client history export to export the history as CSV or JSON, with --since, --module and --output.

See Export history.

Connector

  • Add getHistory to the TypeScript connector and get_history to the Python connector, both taking since and modules.
  • Add historyToCsv to the TypeScript connector and MetricHistory.to_csv() to the Python connector, writing the same CSV as the CLI.

Docs

  • List data/history.json and the graphs' saved time range on the privacy page.

Dependencies

  • Update setuptools to 84.1.0 for the Python connector (#4467).

Full Changelog: 5.14.0...5.15.0

Don't miss a new system-bridge release

NewReleases is sending notifications on new releases.