Skip to content

Commit 51ca997

Browse files
committed
feat: optionally relay logs to log
1 parent a5b96a9 commit 51ca997

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

Cargo.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ panic = 'abort' # Abort on panic
2626

2727
[features]
2828
default = []
29+
log_relay = ["log"]
2930

3031
[dependencies]
3132
lightning = { version = "0.0.125", features = ["std"] }
@@ -75,7 +76,7 @@ libc = "0.2"
7576
uniffi = { version = "0.27.3", features = ["build"], optional = true }
7677
serde = { version = "1.0.210", default-features = false, features = ["std", "derive"] }
7778
serde_json = { version = "1.0.128", default-features = false, features = ["std"] }
78-
log = { version = "0.4.22" }
79+
log = { version = "0.4.22", optional = true}
7980
vss-client = "0.3"
8081
prost = { version = "0.11.6", default-features = false}
8182

src/logger.rs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ pub(crate) use lightning::{log_bytes, log_debug, log_error, log_info, log_trace}
1111
use lightning::util::logger::{Level, Record};
1212

1313
use chrono::Utc;
14+
#[cfg(feature = "log_relay")]
1415
use log::{debug, error, info, trace, warn};
1516

1617
use std::fmt::Debug;
@@ -34,6 +35,7 @@ pub enum Writer {
3435
/// Writes logs to filesystem.
3536
FileWriter { log_file: Mutex<fs::File> },
3637
/// Relays logs to [`log`] logger.
38+
#[cfg(feature = "log_relay")]
3739
LogRelayWriter,
3840
/// Forwards logs to a custom logger.
3941
CustomWriter { inner: Arc<dyn LogWriter + Send + Sync> },
@@ -68,11 +70,17 @@ impl Writer {
6870
},
6971
// Initial logic for Writer that forwards to any logger that
7072
// implements the `log` facade.
73+
#[cfg(feature = "log_relay")]
7174
WriterType::LogRelay(_log_relay_writer_config) => Ok(Writer::LogRelayWriter),
7275
// Initial logic for Writer that forwards to any custom logger.
7376
WriterType::Custom(custom_writer_config) => {
7477
Ok(Writer::CustomWriter { inner: custom_writer_config.inner.clone() })
7578
},
79+
#[cfg(not(feature = "log_relay"))]
80+
_ => {
81+
eprintln!("ERROR: log_relay feature is not enabled");
82+
Err(())
83+
},
7684
}
7785
}
7886
}
@@ -85,6 +93,7 @@ impl LogWriter for Writer {
8593
.expect("log file lock poisoned")
8694
.write_all(message.as_bytes())
8795
.expect("Failed to write to log file"),
96+
#[cfg(feature = "log_relay")]
8897
Writer::LogRelayWriter => match level {
8998
Level::Gossip => {
9099
// trace!(..) used for gossip logs here.

0 commit comments

Comments
 (0)