| | |
| | | #include "LogUtil.h" |
| | | #include <string> |
| | | #include <time.h> |
| | | |
| | | void LogUtil::info(std::string format, ...) { |
| | | return; |
| | | va_list args; |
| | | va_start(args, format); |
| | | LogUtil* LogUtil::instance; |
| | | |
| | | SYSTEMTIME sys; |
| | | GetLocalTime(&sys); |
| | | std::string formatFull = "%4d/%02d/%02d %02d:%02d:%02d.%03d INFO "; |
| | | formatFull.append(format); |
| | | formatFull.append("\n"); |
| | | printf(formatFull.c_str(), sys.wYear, sys.wMonth, sys.wDay, sys.wHour, sys.wMinute, sys.wSecond, sys.wMilliseconds, args); |
| | | LogUtil::LogUtil() |
| | | { |
| | | time_t t = time(0); |
| | | char tmp[64]; |
| | | strftime(tmp, sizeof(tmp), "%Y_%m_%d", localtime(&t)); |
| | | |
| | | log4cpp::PatternLayout* pLayout = new log4cpp::PatternLayout(); |
| | | pLayout->setConversionPattern("%d: %p %c %x: %m%n"); |
| | | // L2 对象 |
| | | string path = string("C:/Program Files (x86)/yeshi/GP/logs/l2_").append(string(tmp)).append(".log"); |
| | | log4cpp::Appender* appender = new log4cpp::FileAppender("FileAppender", path); |
| | | // 3. 把layout对象附着在appender对象上 |
| | | appender->setLayout(pLayout); |
| | | log4cpp::Category& l2_log = log4cpp::Category::getInstance("l2"); |
| | | // 5. 设置additivity为false,替换已有的appender |
| | | l2_log.setAdditivity(false); |
| | | // 5. 把appender对象附到category上 |
| | | l2_log.setAppender(appender); |
| | | // 6. 设置category的优先级,低于此优先级的日志不被记录 |
| | | l2_log.setPriority(log4cpp::Priority::INFO); |
| | | } |
| | | |
| | | LogUtil* LogUtil::getInstance() |
| | | { |
| | | if (instance == nullptr) { |
| | | instance = new LogUtil(); |
| | | } |
| | | return instance; |
| | | } |
| | | |
| | | log4cpp::Category& LogUtil::getL2Logger() |
| | | { |
| | | return log4cpp::Category::getInstance("l2"); |
| | | } |
| | | |
| | | void LogUtil::debug(const char* format, ...) { |
| | | return; |
| | | va_list args; |
| | |
| | | formatFull.append("\n"); |
| | | printf(formatFull.c_str(), sys.wYear, sys.wMonth, sys.wDay, sys.wHour, sys.wMinute, sys.wSecond, sys.wMilliseconds, args); |
| | | } |
| | | void LogUtil::error(const char* format, ...) { |
| | | va_list args; |
| | | va_start(args, format); |
| | | SYSTEMTIME sys; |
| | | GetLocalTime(&sys); |
| | | std::string formatFull = "%4d/%02d/%02d %02d:%02d:%02d.%03d ERROR "; |
| | | formatFull.append(format); |
| | | formatFull.append("\n"); |
| | | printf(formatFull.c_str(), sys.wYear, sys.wMonth, sys.wDay, sys.wHour, sys.wMinute, sys.wSecond, sys.wMilliseconds, args); |
| | | } |
| | | |
| | | |