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
| Template | Purpose | Limitations | Details |
|---|---|---|---|
system-tabular-to-dataservice | Convert 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-js | Run 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-envelope | Build $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-dimension | Persist $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-dimension | Persist v1 facade JSON and create a Legacy dimension. | No $heat-dataservice; new work should use Next paths. | heat-system-legacy-dimension |
cluster-report | Snapshot Kubernetes cluster usage into JSON. | Needs cluster API access; high output volume on frequent static refresh. | cluster-report |
cluster-usage-history | Append bounded CPU/memory timelines from historical cluster-report outputs. | Requires cluster-report parent; max 60 snapshots. | cluster-usage-history |
heat-workspace-group-count | Bucket workspace items and emit heatWorkspaceGroupCountV1 bar series for charts. | Platform Resource Monitor style graphs; v1 filter ops only. | heat-workspace-group-count |
project-metrics | Emit project-level session count metrics as JSON. | Valid projectId or projectName required; not a dashboard publisher. | project-metrics |
session-dimension-query | Query 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-query | Query 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-writer | Ingest 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-query | Run 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 name | Purpose |
|---|---|
system-tabular-dashboard-next | CSV dashboard with explicit time column |
system-tabular-dashboard-autodetect-next | CSV autodetect with suggested layout |
sample-arbex-composable-dashboard | Arbex sample with ComposableChart |
heat-system-resource-monitor-next | Resource Monitor static dashboard |
bulk-analytics-ingest-reference | CSV output discovery and bulk analytics ingest |
bulk-analytics-arbex-sample | Full bulk pipeline: query, writer, SQL query, Arbex dashboard |
See Bulk analytics for the full workflow guide.
Related
- Arbex API reference (scripting
run(ctx),heat.dataservice,heat.layout) - Node templates
- dashboard-v2 contract
- Next data service
- Core Utils