orangeqs.juice.dashboard.schemas#

Schemas for the dashboard module.

Module Contents#

Classes#

ControlPCOverviewTableSettings

Settings for the Control PC Overview Table.

UsageThresholds

Usage percentages at which a resource stops counting as normal.

ControlPCHealthSettings

Settings for the health summary on the System Overview page.

FridgeMonitorDashboardSettings

Settings for the Fridge Monitor Dashboard.

Data#

DEFAULT_FRIDGE_SERVICE

MonitoredResource

Resources that the System Overview page reports a health status for.

API#

orangeqs.juice.dashboard.schemas.DEFAULT_FRIDGE_SERVICE#

‘fridge’

class orangeqs.juice.dashboard.schemas.ControlPCOverviewTableSettings(/, **data: Any)#

Bases: orangeqs.juice.settings.Configurable

Settings for the Control PC Overview Table.

filename: ClassVar[str]#

‘control-pc-overview’

disk_mount_points: dict[str, str]#

None

Mapping of disk mount points to their labels.

orangeqs.juice.dashboard.schemas.MonitoredResource#

None

Resources that the System Overview page reports a health status for.

class orangeqs.juice.dashboard.schemas.UsageThresholds(/, **data: Any)#

Bases: orangeqs.juice.settings.BaseConfigurable

Usage percentages at which a resource stops counting as normal.

warning: float#

None

Report the resource as Attention at or above this usage percentage.

critical: float#

None

Report the resource as Critical at or above this usage percentage.

class orangeqs.juice.dashboard.schemas.ControlPCHealthSettings(/, **data: Any)#

Bases: orangeqs.juice.settings.Configurable

Settings for the health summary on the System Overview page.

filename: ClassVar[str]#

‘control-pc-health’

refresh_interval: float#

3.0

Interval in seconds between resource usage queries.

stale_after: float#

60.0

Report Unknown if no data was received for this many seconds.

thresholds: dict[orangeqs.juice.dashboard.schemas.MonitoredResource, orangeqs.juice.dashboard.schemas.UsageThresholds]#

None

Usage percentage at which each resource is reported as Attention or Critical.

class orangeqs.juice.dashboard.schemas.FridgeMonitorDashboardSettings(/, **data: Any)#

Bases: orangeqs.juice.settings.Configurable

Settings for the Fridge Monitor Dashboard.

Configuration options for the Fridge Monitor Dashboard. This configuration allows you to specify which components of your fridge monitoring system to display on the dashboard, as well as their display names.

Component IDs in this configurable must match the component IDs used in your fridge monitoring service.

filename: ClassVar[str]#

‘fridge-monitor-dashboard’

mode: Literal[read_only, power_user]#

‘power_user’

Dashboard mode, ether ‘read_only’ or ‘power_user`. In read only mode, controls are disabled and users can only monitor the system.

service_name: str#

None

Name of the fridge service to monitor and control. Defaults to "fridge".

Set this if your installation registers the service under a different name in its orchestration configuration.

heaters: dict[str, str]#

None

Mapping of heater unit component IDs to their display names.

thermometry_component_id: str#

‘thermometry_unit_1’

Component ID of the thermometry unit to monitor.

thermometers: dict[str, str]#

None

Mapping of thermometer sensor IDs to their levels.

Level names are fully custom; there is no fixed vocabulary. Levels are displayed in the order they first appear in this mapping. Multiple sensor IDs may share the same level, in which case they are plotted together as separate lines on that level’s graph.

compressors: dict[str, str]#

None

List of component IDs to display names to monitor for compressor units.

ghs_layout_file: str#

‘/home/user/shared/lib/lab/src/lab/config/ghs_layout.svg’

ghs_valves: list[str]#

[‘v1’, ‘v2’, ‘v4’, ‘v3’, ‘v5’, ‘v6’, ‘v7’, ‘v8’, ‘v9’, ‘v10’, ‘v11’, ‘v12’, ‘v13’, ‘v14’, ‘v15’, ‘v1…

ghs_pumps: list[str]#

[‘compressor’, ‘scroll1’, ‘scroll2’, ‘turbo1’, ‘turbo2’]

ghs_sensors: list[str]#

[‘p1’, ‘p2’, ‘p3’, ‘p4’, ‘p5’, ‘p6’]