LogTrace: shared logging & tracing components
For now just an early draft PR to include in the the RFC.
Goal is to provide a more robust logging platform that addresses many pain points such as:
- Needing to restart to enable debug mode
- Missing timestamps & platform information
- Manually needing to sanitize sensitive information
- Uncountable (due to high cardinality) / hard to locate log statements
- Overwhelming user-facing logs, yet missing information from support/system-facing logs
The RFC will go into more detail but for now some of the issues are mentioned here: https://docs.google.com/document/d/1pXcimnZWdasrq-efwASItle9pkLn681VVe4i8YRwvko/edit#heading=h.ptylozq47nr3
Todo:
- [ ] Write RFC
- [ ] Tests
- [x] Initial loadable components
- [x] Reloadable logging levels
- [ ] State change logItem type
- [ ] Separate workspace/environment state channels
- [ ] Automatic log anonymization
- [ ] Network event logItem type (trace?)
- [ ] Hook into open-telemetry provider prep (impl. separate PR)
- [ ] Network call stack captures
- [ ] Configurable verbosity levels
- [ ] Replace existing logging calls
- [ ] Agent log forwarding prep (impl. Separate PR)
- [ ] User marked time-ranges prep
- [ ] More robust exports
- [ ] Separate user-facing log storage from system facing log storage
This PR is marked as stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed automatically in 5 days.
This PR is marked as stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed automatically in 5 days.