Macro gelf_logger::gelf_log

source ·
macro_rules! gelf_log {
    (level: $level:expr, extra: $extra:expr, $($arg:tt)+) => { ... };
    (level: $level:expr, $($arg:tt)+) => { ... };
    (extra: $extra:expr, $($arg:tt)+) => { ... };
    ($($arg:tt)+) => { ... };
}
Expand description

The standard logging macro.

This macro will generically log with the specified GelfLevel, any struct which implement Serialize and format! based argument list.

§Examples

use gelf_logger::{gelf_log, GelfLevel};
use serde_derive::Serialize;

#[derive(Serialize)]
struct Myapp {
   name: String,
   version: String,
}

gelf_log!(level: GelfLevel::Error, "Hello!");

let myapp = Myapp { name: "myapp".into(), version: "0.0.1".into() };
gelf_log!(level: GelfLevel::Debugging, extra: &myapp, "myapp state");