logd is the centralized logging daemon for EriX.
- Rust 100%
| .github | ||
| src | ||
| .editorconfig | ||
| .gitignore | ||
| ARCHITECTURE.md | ||
| Cargo.toml | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| linker.ld | ||
| README.md | ||
| ROADMAP.md | ||
| rustfmt.toml | ||
| SECURITY.md | ||
logd
logd is the centralized in-memory logging service for EriX.
It accepts structured append requests over IPC, stores records in a bounded ring, and serves cursor-based reads for diagnostics and validation flows.
Responsibilities
- validate structured log append requests
- assign monotonic record ids and timestamps
- retain recent records in a fixed-size ring buffer
- return deterministic read results through cursor traversal
- mirror accepted records to console services when enabled
logd is not responsible for persistent storage or external log shipping.
IPC Surface
Implemented operations (see lib-ipc for wire structs/IDs):
IPC_PHASE1_LOGD_OP_APPENDIPC_PHASE1_LOGD_OP_READ
Append responses include assigned record_id and timestamp.
Read responses include deterministic cursor progression and NOT_FOUND when
exhausted.
Runtime feature model
logd-runtime: core daemon behaviorlogd-runtime-phase1-logging: base logging contract enablementlogd-runtime-phase1-time: timestamp source fromtimedlogd-runtime-phase3-serial: mirror appends toserialdlogd-runtime-phase3-framebuffer: mirror appends to bothserialdandfbcond
Integration aliases (logd-integration-*) map to the same runtime behavior,
with optional force-fail test injection in dedicated test modes.
Build and test
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test