diff --git a/Cargo.lock b/Cargo.lock index edb985322c..df8edbb4ba 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -7768,7 +7768,7 @@ dependencies = [ [[package]] name = "nym-node-status-api" -version = "4.6.2-rc6" +version = "4.6.2-rc7" dependencies = [ "ammonia", "anyhow", diff --git a/common/ecash-signer-check-types/src/helper_traits.rs b/common/ecash-signer-check-types/src/helper_traits.rs index c6d6becd33..74ac23fce2 100644 --- a/common/ecash-signer-check-types/src/helper_traits.rs +++ b/common/ecash-signer-check-types/src/helper_traits.rs @@ -36,6 +36,7 @@ pub trait ChainResponse: Verifiable + TimestampedResponse { // we rely on information provided from the api itself AS LONG AS it's not too outdated if self.timestamp() + stale_response_threshold < now { + warn!("chain status response is stale"); return false; } self.chain_synced() @@ -96,26 +97,27 @@ pub trait SignerResponse: Verifiable + TimestampedResponse { // we rely on information provided from the api itself AS LONG AS it's not too outdated if self.timestamp() + stale_response_threshold < now { + warn!("stale signer response"); return false; } if !self.has_signing_keys() { - debug!("missing signing keys"); + warn!("missing signing keys"); return false; } if self.signer_disabled() { - debug!("signer functionalities explicitly disabled"); + warn!("signer functionalities are explicitly disabled"); return false; } if !self.is_ecash_signer() { - debug!("signer doesn't recognise it's a signer for this epoch"); + warn!("signer doesn't recognise it's a signer for this epoch"); return false; } if dkg_epoch_id != self.dkg_ecash_epoch_id() { - debug!( + warn!( "mismatched dkg epoch id. current: {dkg_epoch_id}, signer's: {}", self.dkg_ecash_epoch_id() ); diff --git a/common/ecash-signer-check-types/src/status.rs b/common/ecash-signer-check-types/src/status.rs index ea07862633..8ad6dd949f 100644 --- a/common/ecash-signer-check-types/src/status.rs +++ b/common/ecash-signer-check-types/src/status.rs @@ -11,10 +11,11 @@ use nym_crypto::asymmetric::ed25519; use serde::{Deserialize, Serialize}; use std::time::Duration; use time::OffsetDateTime; +use tracing::warn; use utoipa::ToSchema; -pub(crate) const CHAIN_STALL_THRESHOLD: Duration = Duration::from_secs(5 * 60); -pub(crate) const STALE_RESPONSE_THRESHOLD: Duration = Duration::from_secs(5 * 60); +pub(crate) const CHAIN_STALL_THRESHOLD: Duration = Duration::from_secs(10 * 60); +pub(crate) const STALE_RESPONSE_THRESHOLD: Duration = Duration::from_secs(10 * 60); // the reason for generics is not to remove duplication of code, // but because without them, we'd be having problems with circular dependencies, @@ -188,6 +189,7 @@ where }; let SignerStatus::Tested { result } = &self.status else { + warn!("no valid chain response"); return false; }; result @@ -239,6 +241,7 @@ where }; let SignerStatus::Tested { result } = &self.status else { + warn!("no valid signer response"); return false; }; result.signing_status.signing_available( diff --git a/nym-node-status-api/nym-node-status-api/Cargo.toml b/nym-node-status-api/nym-node-status-api/Cargo.toml index 2531e0bfca..6e90c3cfe7 100644 --- a/nym-node-status-api/nym-node-status-api/Cargo.toml +++ b/nym-node-status-api/nym-node-status-api/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "nym-node-status-api" -version = "4.6.2-rc6" +version = "4.6.2-rc7" authors.workspace = true edition.workspace = true license.workspace = true