Open georgii-tishenin opened 1 month ago
There was an older effort in #236 to improve the logging and have some potential solutions that are relevant to here, and that is also the type of change that somehow solves #239 if we have more than one package
Issue Summary
It is somewhat challenging to configure logging at the debug level. Additionally, there seems to be a mismatch between the intended and actual use of the
Logger
class.Example Scenario
I am working with the DP_VS_RL1 example and I want to see the
SPDLOG_LOGGER_DEBUG
messages in the log files of components and the solver. I have implemented this in the log-at-debug-level branch.Steps Taken:
SPDLOG_ACTIVE_LEVEL
toDEBUG
inLogger.h
.mSLog
inTopologicalPowerComp
andSolver
.Logger
class byTopologicalPowerComp
,Solver
, and other classes.Identified Mismatch
Logger
class has a staticLogger::setLogLevel
function to set the log level for aspdlog::logger
object, but this function is never used (at least, I couldn't find any references).TopologicalPowerComp
andSolver
call the staticLogger::get
function to create/get thespdlog::logger
object. However, the log level of thespdlog::logger
object is not set within the scope of theLogger::get
function, resulting in a default log level ofinfo
.Suggestions for Improvement
Eliminate the need for Step 3.
Logger
class or it's usage, so that the log level is set appropriately when creating or retrieving aspdlog::logger
object.Address the less intuitive aspects of Step 2:
SPDLOG_ACTIVE_LEVEL
toDEBUG
.SPDLOG_ACTIVE_LEVEL
toDEBUG
for Debug builds.Discussion What do you think? I look forward to your feedback and discussion on these points.