From e695d06bbba0bcd32d9a76473e79b85f3caac766 Mon Sep 17 00:00:00 2001 From: cloudhead Date: Mon, 25 Mar 2024 12:05:05 +0100 Subject: [PATCH] node: Logging improvements & other small things --- radicle-cli/src/node.rs | 4 ++-- radicle-node/src/service.rs | 4 ++-- radicle-node/src/tests.rs | 1 + radicle-node/src/wire/protocol.rs | 10 ++++++++-- radicle-node/src/worker.rs | 13 +++++++++++-- 5 files changed, 24 insertions(+), 8 deletions(-) diff --git a/radicle-cli/src/node.rs b/radicle-cli/src/node.rs index d7365a83..b6f37ac9 100644 --- a/radicle-cli/src/node.rs +++ b/radicle-cli/src/node.rs @@ -27,7 +27,7 @@ pub struct SyncSettings { } impl SyncSettings { - /// Create a [`RepoSync`] from a list of seeds. + /// Create a [`SyncSettings`] from a list of seeds. pub fn from_seeds(seeds: impl IntoIterator) -> Self { let seeds = BTreeSet::from_iter(seeds); Self { @@ -37,7 +37,7 @@ impl SyncSettings { } } - /// Create a [`RepoSync`] from a replica count. + /// Create a [`SyncSettings`] from a replica count. pub fn from_replicas(replicas: usize) -> Self { Self { replicas, diff --git a/radicle-node/src/service.rs b/radicle-node/src/service.rs index 84b201ee..4766577c 100644 --- a/radicle-node/src/service.rs +++ b/radicle-node/src/service.rs @@ -1863,11 +1863,11 @@ where let peers = self.sessions.connected().map(|(_, p)| p); let (ann, refs) = self.refs_announcement_for(rid, remotes)?; - debug!(target: "service", "Announcing refs for {rid} to peers.."); - // Update our local sync status. This is useful for determining if refs were updated while // the node was stopped. if let Some(refs) = refs.iter().find(|r| r.remote == ann.node) { + info!(target: "service", "Announcing local refs for {rid} to peers ({})..", refs.at); + if let Err(e) = self .db .seeds_mut() diff --git a/radicle-node/src/tests.rs b/radicle-node/src/tests.rs index 67bda548..83b07fec 100644 --- a/radicle-node/src/tests.rs +++ b/radicle-node/src/tests.rs @@ -783,6 +783,7 @@ fn test_refs_announcement_followed() { // Generate some refs for Bob under their own node_id. let sigrefs = bob.signed_refs_at(arbitrary::gen::(8), arbitrary::oid()); let node_id = bob.id; + bob.init(); bob.storage_mut() .repo_mut(&rid) .remotes diff --git a/radicle-node/src/wire/protocol.rs b/radicle-node/src/wire/protocol.rs index b10635aa..5d44f167 100644 --- a/radicle-node/src/wire/protocol.rs +++ b/radicle-node/src/wire/protocol.rs @@ -381,8 +381,14 @@ where FetchResult::Initiator { rid, result } => { self.service.fetched(rid, *nid, result); } - FetchResult::Responder { .. } => { - // We don't do anything with upload results for now. + FetchResult::Responder { rid, result } => { + if let Some(rid) = rid { + if let Some(err) = result.err() { + log::info!(target: "wire", "Peer {nid} failed to fetch {rid} from us: {err}"); + } else { + log::info!(target: "wire", "Peer {nid} fetched {rid} from us successfully"); + } + } } } diff --git a/radicle-node/src/worker.rs b/radicle-node/src/worker.rs index 3868deeb..2351955f 100644 --- a/radicle-node/src/worker.rs +++ b/radicle-node/src/worker.rs @@ -136,6 +136,8 @@ pub enum FetchResult { result: Result, }, Responder { + /// Repo requested. + rid: Option, /// Upload result. result: Result<(), UploadError>, }, @@ -249,6 +251,7 @@ impl Worker { Ok(header) => header, Err(e) => { return FetchResult::Responder { + rid: None, result: Err(e.into()), } } @@ -256,7 +259,10 @@ impl Worker { log::debug!(target: "worker", "Spawning upload-pack process for {} on stream {stream}..", header.repo); if let Err(e) = self.is_authorized(remote, header.repo) { - return FetchResult::Responder { result: Err(e) }; + return FetchResult::Responder { + rid: Some(header.repo), + result: Err(e), + }; } let result = @@ -265,7 +271,10 @@ impl Worker { .map_err(|e| e.into()); log::debug!(target: "worker", "Upload process on stream {stream} exited with result {result:?}"); - FetchResult::Responder { result } + FetchResult::Responder { + rid: Some(header.repo), + result, + } } } }