[pbs-devel] [PATCH proxmox-backup] fix #4646: Set BackupReader debug to current loglevel

Gabriel Goller g.goller at proxmox.com
Mon Aug 7 14:57:37 CEST 2023


Previously the BackupReader debug parameter was always hardcoded. Now we
check the current loglevel with the `log_enabled!()` macro and set debug
to true if we are on Trace or Debug. This allow the user to set the loglevel
using `PBS_LOG`.

Signed-off-by: Gabriel Goller <g.goller at proxmox.com>
---
 proxmox-backup-client/src/catalog.rs | 5 +++--
 proxmox-backup-client/src/main.rs    | 3 ++-
 proxmox-backup-client/src/mount.rs   | 3 ++-
 proxmox-file-restore/src/main.rs     | 3 ++-
 src/bin/proxmox_backup_debug/diff.rs | 3 ++-
 src/server/pull.rs                   | 3 ++-
 6 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/proxmox-backup-client/src/catalog.rs b/proxmox-backup-client/src/catalog.rs
index 8c8c1458..c9cf1b5c 100644
--- a/proxmox-backup-client/src/catalog.rs
+++ b/proxmox-backup-client/src/catalog.rs
@@ -3,6 +3,7 @@ use std::os::unix::fs::OpenOptionsExt;
 use std::sync::Arc;
 
 use anyhow::{bail, format_err, Error};
+use log::{log_enabled, Level};
 use serde_json::Value;
 
 use proxmox_router::cli::*;
@@ -80,7 +81,7 @@ async fn dump_catalog(param: Value) -> Result<Value, Error> {
         repo.store(),
         &backup_ns,
         &snapshot,
-        true,
+        log_enabled!(Level::Debug) || log_enabled!(Level::Trace),
     )
     .await?;
 
@@ -192,7 +193,7 @@ async fn catalog_shell(param: Value) -> Result<(), Error> {
         repo.store(),
         &backup_ns,
         &backup_dir,
-        true,
+        log_enabled!(Level::Debug) || log_enabled!(Level::Trace),
     )
     .await?;
 
diff --git a/proxmox-backup-client/src/main.rs b/proxmox-backup-client/src/main.rs
index d9e7b899..f89823c2 100644
--- a/proxmox-backup-client/src/main.rs
+++ b/proxmox-backup-client/src/main.rs
@@ -7,6 +7,7 @@ use std::task::Context;
 
 use anyhow::{bail, format_err, Error};
 use futures::stream::{StreamExt, TryStreamExt};
+use log::{log_enabled, Level};
 use serde::Deserialize;
 use serde_json::{json, Value};
 use tokio::sync::mpsc;
@@ -1300,7 +1301,7 @@ async fn restore(
         repo.store(),
         &ns,
         &backup_dir,
-        true,
+        log_enabled!(Level::Trace) || log_enabled!(Level::Debug),
     )
     .await?;
 
diff --git a/proxmox-backup-client/src/mount.rs b/proxmox-backup-client/src/mount.rs
index 242556d0..aacd4362 100644
--- a/proxmox-backup-client/src/mount.rs
+++ b/proxmox-backup-client/src/mount.rs
@@ -9,6 +9,7 @@ use anyhow::{bail, format_err, Error};
 use futures::future::FutureExt;
 use futures::select;
 use futures::stream::{StreamExt, TryStreamExt};
+use log::{log_enabled, Level};
 use nix::unistd::{fork, ForkResult};
 use serde_json::Value;
 use tokio::signal::unix::{signal, SignalKind};
@@ -239,7 +240,7 @@ async fn mount_do(param: Value, pipe: Option<OwnedFd>) -> Result<Value, Error> {
         repo.store(),
         &backup_ns,
         &backup_dir,
-        true,
+        log_enabled!(Level::Debug) || log_enabled!(Level::Trace),
     )
     .await?;
 
diff --git a/proxmox-file-restore/src/main.rs b/proxmox-file-restore/src/main.rs
index 9c74a476..96c2a802 100644
--- a/proxmox-file-restore/src/main.rs
+++ b/proxmox-file-restore/src/main.rs
@@ -5,6 +5,7 @@ use std::sync::Arc;
 
 use anyhow::{bail, format_err, Error};
 use futures::StreamExt;
+use log::{log_enabled, Level};
 use serde_json::{json, Value};
 use tokio::io::AsyncWriteExt;
 
@@ -112,7 +113,7 @@ async fn list_files(
         repo.store(),
         &namespace,
         &snapshot,
-        true,
+        log_enabled!(Level::Debug) || log_enabled!(Level::Trace),
     )
     .await?;
 
diff --git a/src/bin/proxmox_backup_debug/diff.rs b/src/bin/proxmox_backup_debug/diff.rs
index 9924fb7b..c4cf70ba 100644
--- a/src/bin/proxmox_backup_debug/diff.rs
+++ b/src/bin/proxmox_backup_debug/diff.rs
@@ -9,6 +9,7 @@ use anyhow::{bail, Context as AnyhowContext, Error};
 use futures::future::BoxFuture;
 use futures::FutureExt;
 
+use log::{log_enabled, Level};
 use proxmox_human_byte::HumanByte;
 use proxmox_router::cli::{CliCommand, CliCommandMap, CommandLineInterface};
 use proxmox_schema::api;
@@ -299,7 +300,7 @@ async fn create_backup_reader(
         params.repo.store(),
         &params.namespace,
         &backup_dir,
-        false,
+        log_enabled!(Level::Trace) || log_enabled!(Level::Debug),
     )
     .await?;
     Ok(backup_reader)
diff --git a/src/server/pull.rs b/src/server/pull.rs
index a973a10e..bbaa9681 100644
--- a/src/server/pull.rs
+++ b/src/server/pull.rs
@@ -8,6 +8,7 @@ use std::time::SystemTime;
 
 use anyhow::{bail, format_err, Error};
 use http::StatusCode;
+use log::{log_enabled, Level};
 use pbs_config::CachedUserInfo;
 use serde_json::json;
 
@@ -743,7 +744,7 @@ async fn pull_group(
             params.source.store(),
             &remote_ns,
             &snapshot,
-            true,
+            log_enabled!(Level::Debug) || log_enabled!(Level::Trace),
         )
         .await?;
 
-- 
2.39.2






More information about the pbs-devel mailing list