libsyslog

The code (to be publiced shortly) in this crate provides an API implementing the standard Rust logging facade using the system's syslog. That is, it implements the Log trait of the [log] crate for native syslog, typically implemented in C and residing in libc.

Why?

How does this differ from the handful of other pre-existing syslog crates? This one uses the system library implementation rather attempting to rewrite it in Rust. The hope is thus to have a crate that works on pretty much any platform with syslog, avoiding bugs from making assumptions on implementation specific details.

The need arose from a desire to use syslog on illumos, a platform where most of the other syslog crates fail to even build and other(s) instead fail at runtime.

So far this code has only been attempted on illumos. Reports on success or failures to use it on other platforms are most welcome.

Contact

Please see https://www.netizen.se/#contact.

Copyright and License

This crate is Copyright 2023 Martin Samuelsson. It is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.