diff --git a/bin/conf/PseuWoW.conf.default b/bin/conf/PseuWoW.conf.default index d44b216..cc97578 100644 --- a/bin/conf/PseuWoW.conf.default +++ b/bin/conf/PseuWoW.conf.default @@ -13,6 +13,9 @@ // 3=max, 0=no debug output debug=0 +// log time to console? +logtime=1 + // defines if the program should quit on error/exception or stay opened (for debugging) exitonerror=0 diff --git a/src/Client/PseuWoW.cpp b/src/Client/PseuWoW.cpp index 9a224ef..dd2b6ca 100644 --- a/src/Client/PseuWoW.cpp +++ b/src/Client/PseuWoW.cpp @@ -550,6 +550,7 @@ void PseuInstanceConf::ApplyFromVarSet(VarSet &v) // cleanups, internal settings, etc. log_setloglevel(debug); + log_setlogtime((bool)atoi(v.Get("LOGTIME").c_str())); MemoryDataHolder::SetThreadCount(dataLoaderThreads); } diff --git a/src/shared/log.cpp b/src/shared/log.cpp index da82d43..1baaab6 100644 --- a/src/shared/log.cpp +++ b/src/shared/log.cpp @@ -6,9 +6,9 @@ #include #endif -FILE *logfile=NULL; -uint8 loglevel=0; - +FILE *logfile = NULL; +uint8 loglevel = 0; +bool logtime = false; void log_prepare(char *fn, char *mode = NULL) { @@ -27,12 +27,19 @@ void log_setloglevel(uint8 lvl) loglevel = lvl; } +void log_setlogtime(bool b) +{ + logtime = b; +} + void log(const char *str, ...) { if(!str) return; va_list ap; _log_setcolor(true,GREY); + if(logtime) + printf("%s ", GetTimeString().c_str()); va_start(ap, str); vprintf( str, ap ); va_end(ap); @@ -58,6 +65,8 @@ void logdetail(const char *str, ...) return; va_list ap; _log_setcolor(true,LCYAN); + if(logtime) + printf("%s ", GetTimeString().c_str()); va_start(ap, str); vprintf( str, ap ); va_end(ap); @@ -83,6 +92,8 @@ void logdebug(const char *str, ...) return; va_list ap; _log_setcolor(true,LBLUE); + if(logtime) + printf("%s ", GetTimeString().c_str()); va_start(ap, str); vprintf( str, ap ); va_end(ap); @@ -109,6 +120,8 @@ void logdev(const char *str, ...) return; va_list ap; _log_setcolor(true,LMAGENTA); + if(logtime) + printf("%s ", GetTimeString().c_str()); va_start(ap, str); vprintf( str, ap ); va_end(ap); @@ -133,6 +146,8 @@ void logerror(const char *str, ...) { va_list ap; _log_setcolor(false,LRED); + if(logtime) + printf("%s ", GetTimeString().c_str()); va_start(ap, str); vfprintf( stderr, str, ap ); va_end(ap); @@ -156,6 +171,8 @@ void logcritical(const char *str, ...) { va_list ap; _log_setcolor(false,RED); + if(logtime) + printf("%s ", GetTimeString().c_str()); va_start(ap, str); vfprintf( stderr, str, ap ); va_end(ap); @@ -181,6 +198,8 @@ void logcustom(uint8 lvl, Color color, const char *str, ...) return; va_list ap; _log_setcolor(true,color); + if(logtime) + printf("%s ", GetTimeString().c_str()); va_start(ap, str); vprintf( str, ap ); va_end(ap); diff --git a/src/shared/log.h b/src/shared/log.h index 7854f9c..a3be212 100644 --- a/src/shared/log.h +++ b/src/shared/log.h @@ -22,6 +22,7 @@ enum Color void log_prepare(char *fn, char *mode); void log_setloglevel(uint8 lvl); +void log_setlogtime(bool b); void log(const char *str, ...); void logdetail(const char *str, ...); void logdebug(const char *str, ...);