Descent3
Descent3 copied to clipboard
Logging framework
Currently we have a somewhat crippled logging facility based on an old ddebug/mono submodule. It is available only on Debug and does not provide any useful information on Release build. There was another attempt to use the spdlog library (#212), but we reverted it as it added unneeded external dependency.
For our needs logging framework should have following features:
- Header-only or extremely lightweight embedded library that allows us to use logging without dllexports in our external libraries.
- GPLv3-compatible license.
- Library should support console (stderr/stdout) and file output, with configurable format of message (like timestamp, severity, location and message).
- ostream (
<<
) andprintf
-like syntax for creating messages. - Optionally support for C++17 and STL containers.
After some research I'd like to propose to switch the plog library (https://github.com/SergiusTheBest/plog) as the most suitable solution.