16 releases (9 breaking)
| new 0.11.0 | Nov 26, 2025 |
|---|---|
| 0.9.1 | Sep 12, 2025 |
| 0.8.0 | May 26, 2025 |
| 0.7.0 | Mar 13, 2025 |
| 0.2.1 | Jul 29, 2024 |
#66 in #copper
1,330 downloads per month
Used in 57 crates
(5 directly)
47KB
695 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
~2.9–4MB
~77K SLoC