diff --git a/configs/config-demo.json b/configs/config-demo.json index 51edb72c..509c8f18 100644 --- a/configs/config-demo.json +++ b/configs/config-demo.json @@ -26,4 +26,4 @@ "retention-in-memory": "48h", "memory-cap": 100 } -} \ No newline at end of file +} diff --git a/configs/config.json b/configs/config.json index 584baed3..c2361a1c 100644 --- a/configs/config.json +++ b/configs/config.json @@ -8,6 +8,11 @@ "api-allowed-ips": ["*"], "short-running-jobs-duration": 300, "enable-job-taggers": true, + "nodestate-retention": { + "policy": "move", + "target-kind": "file", + "target-path": "./var/nodestate-archive" + }, "resampling": { "minimum-points": 600, "trigger": 180, @@ -92,4 +97,3 @@ }, "ui-file": "ui-config.json" } - diff --git a/internal/config/config.go b/internal/config/config.go index 9de40695..f635b7e4 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -80,7 +80,7 @@ type ProgramConfig struct { } type NodeStateRetention struct { - Policy string `json:"policy"` // "delete" or "parquet" + Policy string `json:"policy"` // "delete" or "move" Age int `json:"age"` // hours, default 24 TargetKind string `json:"target-kind"` // "file" or "s3" TargetPath string `json:"target-path"` diff --git a/internal/config/schema.go b/internal/config/schema.go index bd1b314e..5e02732d 100644 --- a/internal/config/schema.go +++ b/internal/config/schema.go @@ -77,24 +77,18 @@ var configSchema = ` "type": "integer" }, "emission-constant": { - "description": ".", + "description": "Energy mix CO2 emission constant [g/kWh]. If set, displays estimated CO2 emission for jobs.", "type": "integer" }, - "cron-frequency": { - "description": "Frequency of cron job workers.", - "type": "object", - "properties": { - "duration-worker": { - "description": "Duration Update Worker [Defaults to '5m']", - "type": "string" - }, - "footprint-worker": { - "description": "Metric-Footprint Update Worker [Defaults to '10m']", - "type": "string" - } - } + "machine-state-dir": { + "description": "Where to store MachineState files.", + "type": "string" }, - "enable-resampling": { + "systemd-unit": { + "description": "Systemd unit name for log viewer (default: 'clustercockpit').", + "type": "string" + }, + "resampling": { "description": "Enable dynamic zoom in frontend metric plots.", "type": "object", "properties": { @@ -136,9 +130,9 @@ var configSchema = ` "type": "object", "properties": { "policy": { - "description": "Retention policy: 'delete' to remove old rows, 'parquet' to archive then delete.", + "description": "Retention policy: 'delete' to remove old rows, 'move' to archive to Parquet then delete.", "type": "string", - "enum": ["delete", "parquet"] + "enum": ["delete", "move"] }, "age": { "description": "Retention age in hours (default: 24).",