"Real" log message support in the EFU
Created by: SkyToGround
Issue reference / description
Things that have been changed/fixed:
- Added support for "real" log messages.
- Set the log message level as a command line argument.
- Write log messages to file.
- Fix linking issues with the plugin system, the plugin now uses the symbols provided by the EFU.
- Changed a bunch of XTRACE calls to LOG-calls.
- Removed the new line ("\n") from every XTRACE call and made it a part of XTRACE.
- Made XTRACE more flexible and slightly safer by switching out macros for C++ code.
- Fixed a few other minor compile, linker and unit test issues.
- Fixed bug in the hardware (MTU) check code.
Note that the new LOG()
call does not have support for groups. If this is a feature that is used and needed it is easy to add back. The XTRACE()
call also has support for group masks and the ALW
(always?) log level, I consider both to be superfluous but I can in principle be convinced to add support for both of these features given a good argument.
I consider the new logging system to be more or less feature complete but I recognise that some of the design choices I made can be discussed. Feel free to comment.
Checklist for submitter
-
Check for conflict with integration test (I do not know how to do this) -
Unit tests pass
Nominate for Group Code Review (Anyone can nominate it)
Indicate if you think the code should be reviewed in a Thursday code review session.
-
Recommend for group code review
Also, nominate it on the code_review Slack channel.