From: "Thomas Ellmenreich" <t.ellmenreich@proxmox.com>
To: "Shan Shaji" <s.shaji@proxmox.com>, <pbs-devel@lists.proxmox.com>
Subject: Re: [PATCH proxmox-backup 5/6] fix #7024: cli: add more information inside the backup progress logs
Date: Wed, 15 Jul 2026 14:46:49 +0200 [thread overview]
Message-ID: <DJZ5M9T0HGWA.1PRIGBLPZBKZC@proxmox.com> (raw)
In-Reply-To: <20260713081529.62859-6-s.shaji@proxmox.com>
I tested the backup client in both `img` as well as `pxar` mode and the output
works well. The only thing I noticed is that the progress logs during the
backup process are now specific to the image archive type. If I have
understood correctly this is because the callback is only created for the
image archive type.
Not sure if that was intentional, or I may have missed something, but if not,
it could be useful to note this in the commit message.
This could potentially also be something that is only active if
verbose logging is enabled.
As for the tests, I did the following, always using a older client, the new
client and the new client with `verbose` active.
- Image archive backup of a test node
- File archive backup of the node's /etc directory
- File archive backup of 25GB of random data
- Image archive backup of the same node with the additional 25GB
I still have all of the logs in case you want to take a look at them.
On Mon Jul 13, 2026 at 10:15 AM CEST, Shan Shaji wrote:
> previously, the progress logs only reported the processed stream size
> and uploaded size. To improve visibility additional information from
> `PxarArchiverProgressStats` and `UploadCounters` has been included in
> the logs.
>
> To access the upload statistics, a new callback field has been added to
> the UploadOptions struct that accepts UploadCounters and TimeSpan as
> parameters. Additionally, to include pxar metadata in the logs, the
> `PxarArchiverProgressStats` instance is now created earlier and shared
> between the archiver and the progress logger callback.
[snip]
> diff --git a/pbs-client/src/backup_writer.rs b/pbs-client/src/backup_writer.rs
> index 34d8db90b..8ae0cffe8 100644
> --- a/pbs-client/src/backup_writer.rs
> +++ b/pbs-client/src/backup_writer.rs
> @@ -874,20 +877,13 @@ impl BackupWriter {
> let (upload_queue, upload_result) =
> Self::append_chunk_queue(h2.clone(), wid, append_chunk_path, counters.clone());
>
> - let progress_handle = if archive.ends_with(".img.fidx")
> - || archive.ends_with(".pxar.didx")
> - || archive.ends_with(".ppxar.didx")
> - {
> + let progress_handle = if let Some(callback) = progress_logging_callback {
> let counters = counters.clone();
> Some(tokio::spawn(async move {
> loop {
> tokio::time::sleep(tokio::time::Duration::from_secs(60)).await;
> -
> - let size = HumanByte::from(counters.total_stream_len());
> - let size_uploaded = HumanByte::from(counters.uploaded_len());
> let elapsed = TimeSpan::from(start_time.elapsed());
> -
> - info!("processed {size} in {elapsed}, uploaded {size_uploaded}");
The removed logging that logged for all archive types
> + callback(&counters, &elapsed);
> }
> }))
> } else {
[snip]
> diff --git a/proxmox-backup-client/src/main.rs b/proxmox-backup-client/src/main.rs
> index 5c52b7917..8ce5540d5 100644
> --- a/proxmox-backup-client/src/main.rs
> +++ b/proxmox-backup-client/src/main.rs
> @@ -1268,6 +1307,12 @@ async fn create_backup(
> (BackupSpecificationType::IMAGE, false) => {
> log_file("image", &filename, target.as_ref());
>
Current callback (below) is only active for the Image type (as seen above).
> + let progress_logger = |counters: &UploadCounters, elapsed: &TimeSpan| {
> + let size = HumanByte::from(counters.total_stream_len());
> + let size_uploaded = HumanByte::from(counters.uploaded_len());
> + log::info!("processed {size} in {elapsed}, uploaded {size_uploaded}");
> + };
> +
> // 0 means fifo pipe with unknown size
> let image_file_size = (size != 0).then_some(size);
> let upload_options = UploadOptions {
[snip]
next prev parent reply other threads:[~2026-07-15 12:46 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-13 8:15 [PATCH proxmox-backup 0/6] fix #7024: add more information inside backup logs Shan Shaji
2026-07-13 8:15 ` [PATCH proxmox-backup 1/6] client: pxar: rename `ReuseStats` struct to PxarArchiverProgressStats Shan Shaji
2026-07-13 8:15 ` [PATCH proxmox-backup 2/6] client: pxar: use atomic values in `PxarArchiverProgressStats` Shan Shaji
2026-07-13 8:15 ` [PATCH proxmox-backup 3/6] fix #7024: pxar: show archiver summary for legacy and data mode Shan Shaji
2026-07-13 8:15 ` [PATCH proxmox-backup 4/6] client: backup_stats: move `uploaded_len` counter to `UploadCounters` Shan Shaji
2026-07-13 8:15 ` [PATCH proxmox-backup 5/6] fix #7024: cli: add more information inside the backup progress logs Shan Shaji
2026-07-15 12:46 ` Thomas Ellmenreich [this message]
2026-07-15 14:06 ` Shan Shaji
2026-07-13 8:15 ` [PATCH proxmox-backup 6/6] fix #7024: cli: add option to enable verbose logs Shan Shaji
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DJZ5M9T0HGWA.1PRIGBLPZBKZC@proxmox.com \
--to=t.ellmenreich@proxmox.com \
--cc=pbs-devel@lists.proxmox.com \
--cc=s.shaji@proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.