3 releases
0.1.2 | May 22, 2024 |
---|---|
0.1.1 | May 16, 2024 |
0.1.0 | Apr 21, 2024 |
#1145 in WebAssembly
295 downloads per month
Used in llama-core
14KB
141 lines
wasi-logger
wasi-logger
provides a Logger
implementing the log::Log
logging API, which is backed by the wasi:logging/logging
WIT interface.
Usage
To use the Logger
as a logger, it first needs to be installed once in the top-level WASM component using Logger::install
, e.g. in a main
function, a ctor, or using a std::sync::OnceLock
. Remember to also set the global logging max level using log::set_max_level
to ensure that log entries created with log::log!
and others are actually recorded.
#[macro_use]
extern crate log;
extern crate wasi_logger;
fn main() {
wasi_logger::Logger::install().expect("failed to install wasi_logger::Logger");
log::set_max_level(log::LevelFilter::Info);
error!("Something went really wrong");
info!("This is good to know");
debug!("This message is not recorded as the trace level is currently disabled");
}
Features
- The
kv
feature transitively enableslog/kv
and includes the key-value pairs in a log record in the log message.
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
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.
Funding
wasi-logger
has been developed as part of ESiWACE3, the third phase of the Centre of Excellence in Simulation of Weather and Climate in Europe.
Funded by the European Union. This work has received funding from the European High Performance Computing Joint Undertaking (JU) under grant agreement No 101093054.
Dependencies
~7.5MB
~133K SLoC