Conversation
|
🤖 SemverChecks 🤖 No breaking API changes detected Note: this does not mean API is unchanged, or even that there are no breaking changes; simply, none of the detections triggered. |
|
I have some concerns with So, I think for embedded-ish kernel projects, we'll likely need to turn An advantage of litebox-specific logging macros is that we could back them with different implementations depending on compile-time configuration. So, we could back them by What do you think? |
|
(Note that litebox-specific code becomes more complicated if you want to support spans and not just events. But in the context of LiteBox, I am skeptical that spans have value commensurate with their runtime cost.) |
|
Briefly summarizing a longer discussion on Teams b/w @jstarks and myself: we are now considering a facade over |
Resolves #171.
This PR enables
tracingfor LiteBox, and set up a subscriber for the Linux userland. Specifically, this addsLITEBOX_LOGenvironment variable to thelitebox_runner_linux_userland, which can be used like the following:LITEBOX_LOG=debug: Show debug and higher-level logs for all crates and modulesLITEBOX_LOG=litebox::fs=debug: Specificallylitebox::fscode at debug and higher-levelLITEBOX_LOG=litebox=debug,litebox::fs=trace: Multiple filters at different levelsThis was previously not quite possible because we could not have real Rust thread locals (which
tracinguses internally), but now that that works, we can enabletracing.Currently, I have not added much in the form of tracing logs/messages much in the code and just added it for
LiteBoxobject initialization. Future PRs will enable it in more places so that we can more easily see a whole bunch more of what is happening easily.Here's a test output: