How ifeanyi-ugwu/winston_logger_rs works
This Rust workspace provides Winston-style structured logging: applications submit log events, the logger applies configuration and formatting, then transports write or forward entries; query-capable transports can retrieve filtered logs. logform supplies formats, while winston_transport provides transport and query abstractions. The tree and sampled excerpts establish the crate boundaries and several integration behaviors, but the README is empty and core logger internals were not sampled, so some central call wiring is shown only at the public workflow level.
Main entry points: src/lib.rs File transport · logger.rs Logger · transport.rs Transport API · src/lib.rs Format API
Components 21
Logging core
- Winston API
winston/src/lib.rs - Global logging
winston/src/global.rs - Logger
winston/src/logger.rs - Logger builder
winston/src/logger_builder.rs - Level options
winston/src/logger_levels.rs
Formatting
- Log entry
logform/src/log_info.rs - Format API
logform/src/lib.rs - Format config
logform/src/config/mod.rs - Format transforms
logform/src/formats/mod.rs
Transport framework
- Transport API
winston_transport/src/transport.rs - Threaded transport
winston_transport/src/threaded_transport.rs - Batch transport
winston_transport/src/batch_transport.rs - Log query
winston_transport/src/log_query.rs - Query DSL
winston_transport/src/query_dsl/mod.rs
Sinks and integrations
- File transport
winston_file/src/lib.rs - Daily rotation
winston_daily_rotate_file/src/daily_rotate_file.rs - HTTP transport
winston_http/src/lib.rs - MongoDB transport
winston_mongodb/src/lib.rs - Proxy transport
winston_proxy_transport/src/lib.rs - Tracing adapter
winston_tracing/src/lib.rs
Other components
- Application
Connections 24
- Application → Winston API: logs through
- Winston API → Global logging: exposes
- Global logging → Logger: dispatches to
- Logger → Log entry: creates entries
- Logger → Format transforms: formats entries
- Logger → Transport API: dispatches entries
- Logger builder → Logger: builds
- Logger builder → Level options: sets levels
- Format API → Log entry: exports
- Format API → Format transforms: exports
- Format config → Format transforms: configures
- Threaded transport → Transport API: implements
- Batch transport → Transport API: implements
- File transport → Transport API: implements
- File transport → Proxy transport: forwards entries
- File transport → Log query: filters logs
- File transport → Query DSL: evaluates filters
- Daily rotation → File transport: rotates files
- HTTP transport → Proxy transport: uses proxy
- HTTP transport → Log entry: serializes entries
- MongoDB transport → Log query: executes queries
- MongoDB transport → Query DSL: applies filters
- Tracing adapter → Format API: formats events
- Tracing adapter → Transport API: dispatches events