diff --git a/README.md b/README.md index d0da2f5..39cea25 100644 --- a/README.md +++ b/README.md @@ -143,7 +143,7 @@ The first five settings are required when the controller file exists. | `cooldown_secs` | `30` | Per-VM pause after a successful scale action. | | `max_instances_adjusted_per_poll` | `0` | Most VMs resized per poll; `0` means no limit. | | `dry_run` | `false` | Log decisions without resizing pools. | -| `enable_per_vm_status_line` | `true` | Write a status line per VM every poll. | +| `enable_per_vm_status_line` | `false` | Write a status line per VM every poll. | | `enable_per_vm_main_log` | `false` | Send per-VM status lines to the main log instead of per-VM files. | | `enable_aggregate_status_line` | `true` | Write one fleet-wide status line every poll. | | `print_status_header` | `false` | Log a legend of the status-line fields at startup. | diff --git a/io-thread-controller.d/engines/threshold.json b/io-thread-controller.d/engines/threshold.json index 110084e..94792de 100644 --- a/io-thread-controller.d/engines/threshold.json +++ b/io-thread-controller.d/engines/threshold.json @@ -2,7 +2,7 @@ "scale_up_threshold_percent": 95, "scale_down_sustain_secs": 120, "max_scale_down_step": 0, - "scale_up_min_gain_percent": 5, + "scale_up_min_gain_percent": 1, "scale_down_revert_drop_percent": 3, "scale_validation_delay_secs": 30, "scale_validation_delay_per_thread_secs": 0, diff --git a/io-thread-controller.json b/io-thread-controller.json index 9efee46..ed369fb 100644 --- a/io-thread-controller.json +++ b/io-thread-controller.json @@ -1,12 +1,13 @@ { - "scale_poll_secs": 10, + "scale_poll_secs": 5, "round_up_durations": false, - "enable_per_vm_status_line": true, + "enable_per_vm_status_line": false, + "enable_per_vm_main_log": false, "enable_aggregate_status_line": true, "min_thread_count": 1, - "max_thread_count": 8, + "max_thread_count": 16, "host_cpu_scale_up_ceiling_percent": 90, - "cooldown_secs": 10, + "cooldown_secs": 30, "engine": "threshold", "engine_config_dir": "/etc/io-thread-controller.d/engines", "backend_config_dir": "/etc/io-thread-controller.d/backends", diff --git a/src/config.rs b/src/config.rs index 9e4b415..4a24601 100644 --- a/src/config.rs +++ b/src/config.rs @@ -76,10 +76,11 @@ pub struct Config { #[serde(default)] pub round_up_durations: bool, /// Emit a `vm=` status line per tracked instance on - /// every tick (default `true`). - #[serde(default = "default_true")] + /// every tick (default `false`). + #[serde(default)] pub enable_per_vm_status_line: bool, - /// Also emit each per-VM status record on the main controller target. + /// Also emit each per-VM status record on the main controller target (default `false`). + /// Has no effect is `enable_per_vm_status_line` is `false`. #[serde(default)] pub enable_per_vm_main_log: bool, /// Emit a single aggregate status line summarising every @@ -242,7 +243,7 @@ impl Default for Config { host_cpu_scale_up_ceiling: 0.9, cooldown_secs: default_cooldown_secs(), vm_state_path: Path::new("/run/io-thread-controller/vm-ownership.json"), - enable_per_vm_status_line: true, + enable_per_vm_status_line: false, enable_per_vm_main_log: false, enable_aggregate_status_line: true, print_status_header: false,