c++ - Add, enable, disable log4cxx ConsoleAppender at runtime -
how dynamically turn log4cxx logging console on , off in application?
goal here process used choice, command line parm or gui input or whatever. in hypothetical main loop:
if ( userwantstostartconsolelogger ) consolelogger( true ); if ( userwantstostopconsolelogger ) consolelogger( false );
my logging setup is:
#include <log4cxx/logger.h> #include <log4cxx/propertyconfigurator.h> #include <log4cxx/helpers/exception.h> int main( int argc, char** argv ) { const log4cxx::loggerptr logger; log4cxx::propertyconfigurator::configure("./logs.config"); }
where ./logs.config
looks like:
log4j.rootlogger=info, file log4j.appender.stdout=org.apache.log4j.consoleappender log4j.appender.stdout.layout=org.apache.log4j.patternlayout log4j.appender.stdout.layout.conversionpattern=%5p [%t] (%f:%l) - %m%n log4j.appender.file=org.apache.log4j.rollingfileappender log4j.appender.file.file=logs/system.logs log4j.appender.file.maxfilesize=1mb log4j.appender.file.maxbackupindex=10 log4j.appender.file.layout=org.apache.log4j.patternlayout log4j.appender.file.layout.conversionpattern=%d{mm/dd/yyyy hh:mm:ss:sss a} %p %c %m%n
note: presently, have add , stdout
after file
in rootlogger=
line accomplish this.
in context, of course, question is, goes in consolelogger()
function?
Comments
Post a Comment