Dproano/live logs#81
Draft
DanielProano wants to merge 23 commits into
Draft
Conversation
… dproano/live_logs
… dproano/live_logs
Contributor
There was a problem hiding this comment.
Pull request overview
This PR adds live CAN logging support to the app by buffering incoming frames in-memory and periodically flushing them to disk in a rotating log-file scheme, along with supporting utilities/constants and a comprehensive new unit test suite.
Changes:
- Introduces a
DaqLoggerin the CAN thread to bufferRawFrames and write binary log files under alogs/folder, rotating files on a time threshold. - Adds path/time helpers and centralizes timing/logging constants in
daq_log_parse::consts. - Adds extensive unit tests for logger behavior and wiring, plus
tempfileas a dev dependency.
Reviewed changes
Copilot reviewed 7 out of 9 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
src/util.rs |
Adds helpers for resolving an absolute path and formatting timestamps for filenames. |
src/daq_log_parse/parse.rs |
Makes RawFrame public so it can be written by the logger and validated in tests. |
src/daq_log_parse/consts.rs |
Adds logging/timing constants and log folder path. |
src/can/thread.rs |
Implements DaqLogger and integrates logging into the CAN read loop. |
src/can/thread_tests.rs |
Adds a large suite of logger-focused unit tests using temp directories. |
src/can/mod.rs |
Registers the new test module under cfg(test). |
Cargo.toml |
Adds tempfile as a dev dependency for tests. |
Cargo.lock |
Updates lockfile for the tempfile version bump. |
.gitignore |
Ignores the runtime logs/ directory. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
LelsersLasers
requested changes
Jun 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
-Added logging, with frames put in a temporary buffer with a set capacity that writes to disk every second or whenever capacity is met.
-Additionally, a new file is created every minute
-logs folder placed under root
-constants added to consts.rs
-extensive unit testing