Update logging for enabled devices
The previous implementation of RuntimeDeviceTracker
occasionally
outputted a log at level Info
about devices being enabled or disabled.
The problem was that the information given was inconsistent (so it would
sometimes announce one change but not announce a different corrective
change). This could cause weird confusions. For example, when you used a
ColorTable
, it would use a ScopedRuntimeDeviceTracker
to temporarily
force the device to Serial
. The log will just tell you that the device
was forced to Serial
but never tell you that the devices where
restored to include actual parallel devices.
This change helps correct these with the following changes:
- Added a new log level,
DevicesEnabled
, that is a higher level thanInfo
. All logging fromRuntimeDeviceTracker
goes to this log level. - Change the logging output of
RuntimeDeviceTracker
to output a list of currently enabled devices whenever a change happens. That way you don't have to guess what happend for each change. - Change
ScopedRuntimeDeviceTracker
to log whenever the scope is entered or left.