1 unstable release
Uses new Rust 2024
| 0.1.0 | Sep 13, 2025 |
|---|
#1 in #idomatic
18KB
365 lines
slog2
A crate that wraps methods defined in libslog2 in an idomatic rust interface. Also exposes all unsafe c ffi functions via a ffi module.
libslog2 is used to to register and write to logging buffers via the slogger2 system logger daemon.
Usage
Add this to your Cargo.toml:
[dependencies]
slog2 = "0.1"
Example
For more examples examples for how to use this crate.
Register a simple logger buffer:
// Create config
let mut config = slog2::BufferSetConfig::default();
config.buffer_set_name("myprogramm")?;
config.buffer_name("default")?;
config.set_num_pages(7);
// Register and get handle.
let [handle] = config.register(None)?;
// Pass handle as buffer.
slog2::info!(buffer=handle, "Hello World {}", 42);
slog2::info!(buffer=handle, code=1000, "Hello World {}", 42);
Set a default buffer:
// Set a default buffer.
slog2::Buffer::set_default_buffer(Some(buffer_handle));
// Omitting the buffer argument will use the default buffer.
slog2::info!("Hello World {}", 42);
slog2::info!(code=1000, "Hello World {}", 42);
Target Support
This crate was tested for targets aarch64-unknown-nto-qnx800, x86_64-pc-nto-qnx800 with the rustc that is shipped in the qnxsoftwarecenter.
Dependencies
~97KB