gadget_common/
debug_logger.rs1use std::fmt::Display;
2
3#[derive(Clone, Default)]
4pub struct DebugLogger {
5 pub id: String,
6}
7
8impl DebugLogger {
9 pub fn trace<T: Display>(&self, msg: T) {
10 if self.id.is_empty() {
11 log::trace!(target: "gadget", "{msg}");
12 return;
13 }
14 log::trace!(target: "gadget", "[{}] {msg}", &self.id);
15 }
16
17 pub fn debug<T: Display>(&self, msg: T) {
18 if self.id.is_empty() {
19 log::debug!(target: "gadget", "{msg}");
20 return;
21 }
22 log::debug!(target: "gadget", "[{}] {msg}", &self.id);
23 }
24
25 pub fn info<T: Display>(&self, msg: T) {
26 if self.id.is_empty() {
27 log::info!(target: "gadget", "{msg}");
28 return;
29 }
30 log::info!(target: "gadget", "[{}] {msg}", &self.id);
31 }
32
33 pub fn warn<T: Display>(&self, msg: T) {
34 if self.id.is_empty() {
35 log::warn!(target: "gadget", "{msg}");
36 return;
37 }
38 log::warn!(target: "gadget", "[{}] {msg}", &self.id);
39 }
40
41 pub fn error<T: Display>(&self, msg: T) {
42 if self.id.is_empty() {
43 log::error!(target: "gadget", "{msg}");
44 return;
45 }
46 log::error!(target: "gadget", "[{}] {msg}", &self.id);
47 }
48}