9 unstable releases (3 breaking)
0.5.1 | Dec 5, 2024 |
---|---|
0.4.1 | Nov 15, 2024 |
0.2.1 | Jul 29, 2024 |
#33 in #copper
662 downloads per month
Used in 27 crates
(17 directly)
21KB
343 lines
Structured Logging Macros
The cu29_log_derive
crate provides macros like !debug
to enable structured logging, allowing you to efficiently log
data in
a binary format.
Example Usage
debug!("This string won't be stored nor interpreted on the robot", myvaluename = 42);
Instead of storing the complete formatted string in a log file, this macro captures a unique identifier for the format string and parameter names, then logs the values in a compact bincode format. This approach significantly improves logging efficiency.
Integration with Copper
If you are using this crate as part of a Copper project, no additional setup is required. The logs will automatically
integrate with the Unified Logger (cu29_unifiedlog
), storing logs in the binary format.
Standalone Usage
For those using this crate independently of Copper, follow the example setup provided in cu_standalone_structlog to configure your logger.
Extracting Logs
You can extract and view your logs using either Rust or Python:
- Rust: Refer to the cu29_export module.
- Python: Use the provided script in readlog.py for Python support.
Dependencies
~4.5–8MB
~144K SLoC