Summary
Introduce structured logging with fields per fetch and level control via flags.
Motivation
- Parseable logs for pipelines/SIEM
- Easier debugging at scale
Scope
- One JSON log per fetch: host, url, code, bytes, duration_ms, via=tor|direct, retry
- CLI flags:
--log-level, --log-format=json|text
Acceptance Criteria
- Logs are valid JSON when requested
- Log level filtering works across all packages
Tasks