summaryrefslogtreecommitdiff
path: root/rust/src
diff options
context:
space:
mode:
authorPeter LaFosse <peter@vector35.com>2022-02-01 11:35:10 -0500
committerPeter LaFosse <peter@vector35.com>2022-03-16 08:05:27 -0400
commit5ce116e4d1d3c30537f3635c06d7a0c619e55e43 (patch)
treedd96aa9d6b55b26dd247cd0b7e4d0bdfc6a15681 /rust/src
parentefb5d8ba056fbae3f57a80f813a18c4a6da60f28 (diff)
Add support for structured logging
Diffstat (limited to 'rust/src')
-rw-r--r--rust/src/lib.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/rust/src/lib.rs b/rust/src/lib.rs
index 966f3ff2..da9f5bee 100644
--- a/rust/src/lib.rs
+++ b/rust/src/lib.rs
@@ -129,7 +129,7 @@ pub mod logger {
if let Ok(msg) = CString::new(format!("{}", record.args())) {
unsafe {
- BNLog(level, msg.as_ptr());
+ BNLog(0, level, std::ptr::null(), 0, msg.as_ptr());
}
};
}
@@ -145,7 +145,7 @@ pub mod logger {
}
pub trait LogListener: 'static + Sync {
- fn log(&self, level: Level, msg: &BnStr);
+ fn log(&self, session: usize, level: Level, msg: &BnStr, logger_name: &BnStr, tid: usize);
fn level(&self) -> Level;
fn close(&self) {}
}
@@ -193,13 +193,13 @@ pub mod logger {
LogGuard { ctxt: raw }
}
- extern "C" fn cb_log<L>(ctxt: *mut c_void, level: Level, msg: *const c_char)
+ extern "C" fn cb_log<L>(ctxt: *mut c_void, session: usize, level: Level, msg: *const c_char, logger_name: *const c_char, tid: usize)
where
L: LogListener,
{
ffi_wrap!("LogListener::log", unsafe {
let listener = &*(ctxt as *const L);
- listener.log(level, BnStr::from_raw(msg));
+ listener.log(session, level, BnStr::from_raw(msg), BnStr::from_raw(logger_name), tid);
})
}