#godot #log-level #log #debugging-logging #logging #gamedev #log-debug

godot-logger

A logger for godot-rust projects that prints logs using the godot_print! macro

5 releases (2 stable)

1.1.0 Dec 16, 2022
1.0.0 Oct 20, 2021
0.3.0 Oct 19, 2021
0.2.0 Oct 4, 2021
0.1.0 Sep 25, 2021

#542 in Debugging

MIT/Apache

15KB
159 lines

godot-logger

Crates.io docs.rs GitHub branch checks state

A logger for godot-rust projects

godot-logger is an easy-to-use logger for godot-rust projects. It prints logs to Godot's output console and supports module-specific log levels.

Usage

Start by adding godot-logger and log as dependencies to your project's Cargo.toml.

[dependencies]
godot-logger = "1.1.0"
log = "0.4"

Then configure and initialize the logger in the init method that is passed to godot_init!.

use gdnative::prelude::*;
use godot_logger::GodotLogger;
use log::{Level, LevelFilter};

fn init(handle: InitHandle) {
    if let Err(error) = GodotLogger::builder()
        .default_log_level(Level::Info)
        .add_filter("godot_logger", LevelFilter::Debug)
        .init()
    {
        godot_warn!("{}", error.to_string());
    }

    log::debug!("Initialized the logger");
}

godot_init!(init);

The following will be printed in the Output console inside Godot:

2021-09-25 19:29:25 DEBUG godot_logger Initialized the logger

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~9–17MB
~266K SLoC