mirror of
https://git.proxmox.com/git/proxmox-backup
synced 2025-08-08 14:36:53 +00:00
log: retrieve ReaderEnvironment
debug flag from tracing
Don't hardcode the debug flag but retrieve the currently enabled level using tracing. This will change the default log-behavior and disable some logs that have been printed previously. F.e.: the "protocol upgrade done" message is not visible anymore per default because it is printed with debug. Signed-off-by: Gabriel Goller <g.goller@proxmox.com>
This commit is contained in:
parent
631b09b2eb
commit
baacc3f2de
@ -2,6 +2,7 @@ use anyhow::{bail, format_err, Error};
|
|||||||
use nix::dir::Dir;
|
use nix::dir::Dir;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
use std::sync::{Arc, Mutex};
|
use std::sync::{Arc, Mutex};
|
||||||
|
use tracing::info;
|
||||||
|
|
||||||
use ::serde::Serialize;
|
use ::serde::Serialize;
|
||||||
use serde_json::{json, Value};
|
use serde_json::{json, Value};
|
||||||
@ -141,7 +142,7 @@ impl BackupEnvironment {
|
|||||||
auth_id,
|
auth_id,
|
||||||
worker,
|
worker,
|
||||||
datastore,
|
datastore,
|
||||||
debug: false,
|
debug: tracing::enabled!(tracing::Level::DEBUG),
|
||||||
formatter: JSON_FORMATTER,
|
formatter: JSON_FORMATTER,
|
||||||
backup_dir,
|
backup_dir,
|
||||||
last_backup: None,
|
last_backup: None,
|
||||||
@ -687,12 +688,16 @@ impl BackupEnvironment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub fn log<S: AsRef<str>>(&self, msg: S) {
|
pub fn log<S: AsRef<str>>(&self, msg: S) {
|
||||||
self.worker.log_message(msg);
|
info!("{}", msg.as_ref());
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn debug<S: AsRef<str>>(&self, msg: S) {
|
pub fn debug<S: AsRef<str>>(&self, msg: S) {
|
||||||
if self.debug {
|
if self.debug {
|
||||||
self.worker.log_message(msg);
|
// This is kinda weird, we would like to use tracing::debug! here and automatically
|
||||||
|
// filter it, but self.debug is set from the client-side and the logs are printed on
|
||||||
|
// client and server side. This means that if the client sets the log level to debug,
|
||||||
|
// both server and client need to have 'debug' logs printed.
|
||||||
|
self.log(msg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -10,6 +10,7 @@ use pbs_datastore::backup_info::BackupDir;
|
|||||||
use pbs_datastore::DataStore;
|
use pbs_datastore::DataStore;
|
||||||
use proxmox_rest_server::formatter::*;
|
use proxmox_rest_server::formatter::*;
|
||||||
use proxmox_rest_server::WorkerTask;
|
use proxmox_rest_server::WorkerTask;
|
||||||
|
use tracing::info;
|
||||||
|
|
||||||
/// `RpcEnvironment` implementation for backup reader service
|
/// `RpcEnvironment` implementation for backup reader service
|
||||||
#[derive(Clone)]
|
#[derive(Clone)]
|
||||||
@ -39,7 +40,7 @@ impl ReaderEnvironment {
|
|||||||
auth_id,
|
auth_id,
|
||||||
worker,
|
worker,
|
||||||
datastore,
|
datastore,
|
||||||
debug: false,
|
debug: tracing::enabled!(tracing::Level::DEBUG),
|
||||||
formatter: JSON_FORMATTER,
|
formatter: JSON_FORMATTER,
|
||||||
backup_dir,
|
backup_dir,
|
||||||
allowed_chunks: Arc::new(RwLock::new(HashSet::new())),
|
allowed_chunks: Arc::new(RwLock::new(HashSet::new())),
|
||||||
@ -47,12 +48,16 @@ impl ReaderEnvironment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub fn log<S: AsRef<str>>(&self, msg: S) {
|
pub fn log<S: AsRef<str>>(&self, msg: S) {
|
||||||
self.worker.log_message(msg);
|
info!("{}", msg.as_ref());
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn debug<S: AsRef<str>>(&self, msg: S) {
|
pub fn debug<S: AsRef<str>>(&self, msg: S) {
|
||||||
if self.debug {
|
if self.debug {
|
||||||
self.worker.log_message(msg);
|
// This is kinda weird, we would like to use tracing::debug! here and automatically
|
||||||
|
// filter it, but self.debug is set from the client-side and the logs are printed on
|
||||||
|
// client and server side. This means that if the client sets the log level to debug,
|
||||||
|
// both server and client need to have 'debug' logs printed.
|
||||||
|
self.log(msg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -278,8 +278,15 @@ impl PullSource for RemoteSource {
|
|||||||
ns: &BackupNamespace,
|
ns: &BackupNamespace,
|
||||||
dir: &BackupDir,
|
dir: &BackupDir,
|
||||||
) -> Result<Arc<dyn PullReader>, Error> {
|
) -> Result<Arc<dyn PullReader>, Error> {
|
||||||
let backup_reader =
|
let backup_reader = BackupReader::start(
|
||||||
BackupReader::start(&self.client, None, self.repo.store(), ns, dir, true).await?;
|
&self.client,
|
||||||
|
None,
|
||||||
|
self.repo.store(),
|
||||||
|
ns,
|
||||||
|
dir,
|
||||||
|
tracing::enabled!(tracing::Level::DEBUG),
|
||||||
|
)
|
||||||
|
.await?;
|
||||||
Ok(Arc::new(RemoteReader {
|
Ok(Arc::new(RemoteReader {
|
||||||
backup_reader,
|
backup_reader,
|
||||||
dir: dir.clone(),
|
dir: dir.clone(),
|
||||||
|
Loading…
Reference in New Issue
Block a user