[pbs-devel] [PATCH proxmox-backup 0/3] backup client progress log interval

Christian Ebner c.ebner at proxmox.com
Mon Oct 21 14:55:19 CEST 2024


These patches allow to specify a time based or size based interval
for progress log output as generated during `proxmox-backup-client
backup` runs.

The client is extended by an optional `progress-log-interval`
parameter, which allows to set the interval as `TimeSpan` or
`HumanByte` parsable input string, depending on the variant prefix.
If set to `none` the progress log output is disabled, if no prefix is
specified, a time based interval is assumed. Lastly, if the parameter
is not given, the default 'time:1m' is used.

Examples for client invocations are:
- no progress logging:
  `proxmox-backup-client backup root.pxar:/ --progress-log-interval=none`
- time based progress logging with 1min 30s interval
  `proxmox-backup-client backup root.pxar:/ --progress-log-interval="1m 30s"`
  `proxmox-backup-client backup root.pxar:/ --progress-log-interval="time:1m 30s"`
- size based progress logging with 512MiB interval
  `proxmox-backup-client backup root.pxar:/ --progress-log-interval="size:512MiB"`

Lower limits are set to 1s and 100MiB for the corresponding variant in
order to prevent excessive log output.

Christian Ebner (3):
  api-types: client: add type to specify progress log interval
  client: progress log: factor out log message generation
  client: progress log: allow to specify backup log interval

 pbs-api-types/src/client.rs       | 73 ++++++++++++++++++++++++
 pbs-api-types/src/lib.rs          |  3 +
 pbs-client/src/backup_writer.rs   | 92 +++++++++++++++++++++++++------
 proxmox-backup-client/src/main.rs | 27 ++++++++-
 4 files changed, 174 insertions(+), 21 deletions(-)
 create mode 100644 pbs-api-types/src/client.rs

-- 
2.39.5





More information about the pbs-devel mailing list