Skip to Content
This documentation is provided with the HEAT environment and is relevant for this HEAT instance only.
RunnersSystem UtilsSystem Utils (platform runner)

System Utils (platform runner)

System-utils is a platform runner deployment (Core API host) for reserved node templates: tabular transforms, Arbex, cluster monitoring, and Next/Legacy dimension publishing. It does not use the separate core-utils or dashboard-utils images.

Integrator-owned Next dashboards should use dashboard-v2 on dashboard-utils. For the same tabular → $heat-dataservice transform on core-utils (single parent), see tabular-to-dataservice.

Node template selection

TemplatePurposeLimitationsDetails
system-tabular-to-dataserviceConvert all outputs from one input-node (CSV/TSV/JSON uploads) into $heat-dataservice plus upload summary.system-utils graphs only; multi-upload parent required; not interchangeable with core-utils single-parent node.system-tabular-to-dataservice
system-arbex-jsRun sandboxed JavaScript (async function run(ctx)) with optional native $heat-dataservice and layout hints.Platform runner and Node subprocess; not arbitrary server-side Python; follow resource and timeout limits in the guide.system-arbex-js
heat-system-dataservice-envelopeBuild $heat-dataservice from declarative channels and one parent JSON root.Single parent; platform/static pipelines; paths supplied in config.heat-system-dataservice-envelope
heat-system-next-dimensionPersist $heat-dataservice and create a Next dashboard dimension.Platform reserved; use dashboard-v2 for integrator templates; no ui/legacy.heat-system-next-dimension
heat-system-legacy-dimensionPersist v1 facade JSON and create a Legacy dimension.No $heat-dataservice; new work should use Next paths.heat-system-legacy-dimension
cluster-reportSnapshot Kubernetes cluster usage into JSON.Needs cluster API access; high output volume on frequent static refresh.cluster-report
cluster-usage-historyAppend bounded CPU/memory timelines from historical cluster-report outputs.Requires cluster-report parent; max 60 snapshots.cluster-usage-history
heat-workspace-group-countBucket workspace items and emit heatWorkspaceGroupCountV1 bar series for charts.Platform Resource Monitor style graphs; v1 filter ops only.heat-workspace-group-count
project-metricsEmit project-level session count metrics as JSON.Valid projectId or projectName required; not a dashboard publisher.project-metrics
session-dimension-queryQuery sessions by dimension criteria; returns grouped matches with nested matchingDimensions.At least one filter required; platform/static pipelines only; pagination on distinct sessions.session-dimension-query
node-output-queryQuery core Postgres for all matching node output IDs (no pagination).Read-only core DB; large JSON payloads; platform bulk ingest only.node-output-query
system-bulk-tabular-writerIngest CSV/JSON outputs into HEAT Bulk Analytics DB; emit heatBulkWriterCatalogV1.Requires analytics Postgres pod; parent must be node-output-query.system-bulk-tabular-writer
system-bulk-analytics-queryRun read-only SQL against bulk analytics DB; emit tabular JSON.Parent bulk writer or explicit analyticsDatabase / bulkWriterNodeInstanceId; SELECT-only.system-bulk-analytics-query

Shipped session template examples

Template namePurpose
system-tabular-dashboard-nextCSV dashboard with explicit time column
system-tabular-dashboard-autodetect-nextCSV autodetect with suggested layout
sample-arbex-composable-dashboardArbex sample with ComposableChart
heat-system-resource-monitor-nextResource Monitor static dashboard
bulk-analytics-ingest-referenceCSV output discovery and bulk analytics ingest
bulk-analytics-arbex-sampleFull bulk pipeline: query, writer, SQL query, Arbex dashboard

See Bulk analytics for the full workflow guide.