prima_rs_logger/logger/
macros.rs

1/// # Example info! macro
2///
3/// ```rust,no_run
4/// prima_rs_logger::info!("Info {}", "param"; "meta" => "data" );
5/// ```
6
7#[macro_export(local_inner_macros)]
8macro_rules! info {
9        ( $($args:tt)* ) => {
10            $crate::slog_macro::with_logger(|l| {
11                $crate::slog_macro::info!(l, $($args)* )
12            });
13        };
14        (#$tag:expr, $($args:tt)* ) => {
15            $crate::slog_macro::with_logger(|l| {
16                $crate::slog_macro::info!(l, #$tag, $($args)* )
17            });
18        };
19    }
20
21/// # Example warn! macro
22///
23/// ```rust,no_run
24/// prima_rs_logger::warn!("Warn {}", "param"; "meta" => "data" );
25/// ```
26
27// This macro is internally called `v_warn` since `pub use warn` is forbidden.
28// but exposed as `warn`
29#[macro_export(local_inner_macros)]
30macro_rules! v_warn {
31        ( $($args:tt)* ) => {
32            $crate::slog_macro::with_logger(|l| {
33                $crate::slog_macro::warn!(l, $($args)* )
34            });
35        };
36        (#$tag:expr, $($args:tt)* ) => {
37            $crate::slog_macro::with_logger(|l| {
38                $crate::slog_macro::warn!(l, #$tag, $($args)* )
39            });
40        };
41    }
42
43/// # Example debug! macro
44///
45/// ```rust,no_run
46/// prima_rs_logger::debug!("Debug {}", "param"; "meta" => "data" );
47/// ```
48
49#[macro_export(local_inner_macros)]
50macro_rules! debug {
51        ( $($args:tt)* ) => {
52            $crate::slog_macro::with_logger(|l| {
53                $crate::slog_macro::debug!(l, $($args)* )
54            });
55        };
56        (#$tag:expr, $($args:tt)* ) => {
57            $crate::slog_macro::with_logger(|l| {
58                $crate::slog_macro::debug!(l, #$tag, $($args)* )
59            });
60        };
61    }
62
63/// # Example trace! macro
64///
65/// ```rust,no_run
66/// prima_rs_logger::trace!("Trace {}", "param"; "meta" => "data" );
67/// ```
68
69#[macro_export(local_inner_macros)]
70macro_rules! trace {
71        ( $($args:tt)* ) => {
72            $crate::slog_macro::with_logger(|l| {
73                $crate::slog_macro::trace!(l, $($args)* )
74            });
75        };
76        (#$tag:expr, $($args:tt)* ) => {
77            $crate::slog_macro::with_logger(|l| {
78                $crate::slog_macro::trace!(l, #$tag, $($args)* )
79            });
80        };
81    }
82
83/// # Example error! macro
84///
85/// ```rust,no_run
86/// prima_rs_logger::error!("Error {}", "param"; "meta" => "data" );
87/// ```
88
89#[macro_export(local_inner_macros)]
90macro_rules! error {
91        ( $($args:tt)* ) => {
92            $crate::slog_macro::with_logger(|l| {
93                $crate::slog_macro::error!(l, $($args)* )
94            });
95        };
96        (#$tag:expr, $($args:tt)* ) => {
97            $crate::slog_macro::with_logger(|l| {
98                $crate::slog_macro::slog_error!(l, #$tag, $($args)* )
99            });
100        };
101    }
102
103pub use debug;
104pub use error;
105pub use info;
106pub use trace;
107pub use v_warn as warn;