Skip to content

Commit 7658210

Browse files
committed
Copy logging macros over.
1 parent 8ec6caf commit 7658210

File tree

3 files changed

+84
-7
lines changed

3 files changed

+84
-7
lines changed

src/event.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
use crate::{
2-
ChannelManager, EventSender, FilesystemLogger, LdkLiteChainAccess, LdkLiteConfig, NetworkGraph,
2+
ChannelManager, EventSender, LdkLiteChainAccess, LdkLiteConfig, NetworkGraph,
33
PaymentInfoStorage,
44
};
55

6+
#[allow(unused_imports)]
7+
use crate::logger::{Logger, FilesystemLogger, log_info, log_error, log_warn, log_trace, log_given_level, log_internal};
8+
69
use lightning::chain::chaininterface::{BroadcasterInterface, ConfirmationTarget, FeeEstimator};
710
use lightning::chain::keysinterface::KeysManager;
811
use lightning::util::events as ldk_events;
9-
use lightning::util::logger::Logger;
10-
use lightning::{log_error, log_given_level, log_internal};
1112

1213
use bdk::database::MemoryDatabase;
1314

src/lib.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,9 @@ use access::LdkLiteChainAccess;
3434
pub use error::LdkLiteError as Error;
3535
pub use event::LdkLiteEvent;
3636
use event::LdkLiteEventHandler;
37-
use logger::FilesystemLogger;
37+
38+
#[allow(unused_imports)]
39+
use logger::{Logger, FilesystemLogger, log_info, log_error, log_warn, log_trace, log_given_level, log_internal};
3840

3941
use lightning::chain::keysinterface::{InMemorySigner, KeysInterface, KeysManager, Recipient};
4042
use lightning::chain::{chainmonitor, Access, BestBlock, Confirm, Filter, Watch};
@@ -49,9 +51,7 @@ use lightning::routing::gossip::P2PGossipSync;
4951
use lightning::routing::scoring::ProbabilisticScorer;
5052

5153
use lightning::util::config::UserConfig;
52-
use lightning::util::logger::Logger;
5354
use lightning::util::ser::ReadableArgs;
54-
use lightning::{log_error, log_given_level, log_internal};
5555

5656
use lightning_background_processor::BackgroundProcessor;
5757
use lightning_background_processor::GossipSync as BPGossipSync;

src/logger.rs

Lines changed: 77 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
use lightning::util::logger::{Logger, Record};
1+
pub(crate) use lightning::util::logger::Logger;
2+
use lightning::util::logger::Record;
23
use lightning::util::ser::Writer;
34

45
use chrono::Utc;
@@ -8,6 +9,7 @@ use std::fs;
89
pub(crate) struct FilesystemLogger {
910
data_dir: String,
1011
}
12+
1113
impl FilesystemLogger {
1214
pub(crate) fn new(data_dir: String) -> Self {
1315
let logs_path = format!("{}/logs", data_dir);
@@ -36,3 +38,77 @@ impl Logger for FilesystemLogger {
3638
.unwrap();
3739
}
3840
}
41+
42+
43+
// TODO: We copied the logging macros for now from `lightning::util::macro_logger`. We should
44+
// switch back to using them from upstream after the next release, which includes their export.
45+
macro_rules! log_internal {
46+
($logger: expr, $lvl:expr, $($arg:tt)+) => (
47+
$logger.log(&lightning::util::logger::Record::new($lvl, format_args!($($arg)+), module_path!(), file!(), line!()))
48+
);
49+
}
50+
pub(crate) use log_internal;
51+
52+
macro_rules! log_given_level {
53+
($logger: expr, $lvl:expr, $($arg:tt)+) => (
54+
match $lvl {
55+
#[cfg(not(any(feature = "max_level_off")))]
56+
lightning::util::logger::Level::Error => log_internal!($logger, $lvl, $($arg)*),
57+
#[cfg(not(any(feature = "max_level_off", feature = "max_level_error")))]
58+
lightning::util::logger::Level::Warn => log_internal!($logger, $lvl, $($arg)*),
59+
#[cfg(not(any(feature = "max_level_off", feature = "max_level_error", feature = "max_level_warn")))]
60+
lightning::util::logger::Level::Info => log_internal!($logger, $lvl, $($arg)*),
61+
#[cfg(not(any(feature = "max_level_off", feature = "max_level_error", feature = "max_level_warn", feature = "max_level_info")))]
62+
lightning::util::logger::Level::Debug => log_internal!($logger, $lvl, $($arg)*),
63+
#[cfg(not(any(feature = "max_level_off", feature = "max_level_error", feature = "max_level_warn", feature = "max_level_info", feature = "max_level_debug")))]
64+
lightning::util::logger::Level::Trace => log_internal!($logger, $lvl, $($arg)*),
65+
#[cfg(not(any(feature = "max_level_off", feature = "max_level_error", feature = "max_level_warn", feature = "max_level_info", feature = "max_level_debug", feature = "max_level_trace")))]
66+
lightning::util::logger::Level::Gossip => log_internal!($logger, $lvl, $($arg)*),
67+
68+
#[cfg(any(feature = "max_level_off", feature = "max_level_error", feature = "max_level_warn", feature = "max_level_info", feature = "max_level_debug", feature = "max_level_trace"))]
69+
_ => {
70+
// The level is disabled at compile-time
71+
},
72+
}
73+
);
74+
}
75+
pub(crate) use log_given_level;
76+
77+
#[allow(unused_macros)]
78+
macro_rules! log_error {
79+
($logger: expr, $($arg:tt)*) => (
80+
log_given_level!($logger, lightning::util::logger::Level::Error, $($arg)*)
81+
)
82+
}
83+
pub(crate) use log_error;
84+
85+
#[allow(unused_macros)]
86+
macro_rules! log_warn {
87+
($logger: expr, $($arg:tt)*) => (
88+
log_given_level!($logger, lightning::util::logger::Level::Warn, $($arg)*)
89+
)
90+
}
91+
pub(crate) use log_warn;
92+
93+
#[allow(unused_macros)]
94+
macro_rules! log_info {
95+
($logger: expr, $($arg:tt)*) => (
96+
log_given_level!($logger, lightning::util::logger::Level::Info, $($arg)*)
97+
)
98+
}
99+
pub(crate) use log_info;
100+
101+
#[allow(unused_macros)]
102+
macro_rules! log_debug {
103+
($logger: expr, $($arg:tt)*) => (
104+
log_given_level!($logger, lightning::util::logger::Level::Debug, $($arg)*)
105+
)
106+
}
107+
108+
#[allow(unused_macros)]
109+
macro_rules! log_trace {
110+
($logger: expr, $($arg:tt)*) => (
111+
log_given_level!($logger, lightning::util::logger::Level::Trace, $($arg)*)
112+
)
113+
}
114+
pub(crate) use log_trace;

0 commit comments

Comments
 (0)