Log4cplus <2> 基本用法

注:使用静态库时,不要增加预定义宏LOG4CPLUS_STATIC,貌似有些Blog提到了。

一般步骤如下:

1. Create an appender object
2. Create an layout object
3. Attach the layout obj to appender obj
4. Create a logger object through staitc method:log4cplus::Logger::getInstance("logger_name")
5. Attach appender obj to logger obj.
6. Set logger priority, e.g.(WARN, ERROR)

类的

http://log4cplus.sourceforge.net/docs/html/inherits.html

示例代码:

#include <iostream>
#include <string>

#include <log4cplus/logger.h>
#include <log4cplus/consoleappender.h>
#include <log4cplus/layout.h>

using namespace log4cplus;
using namespace log4cplus::helpers;

int main()
{
 SharedObjectPtr<Appender> append (new ConsoleAppender());
 append->setName(L"Test appender");   
 
 std::wstring pattern = L"%d{%m/%d/%y %H:%M:%S} %-5p - %m [%l]%n";   
 std::auto_ptr<Layout> layout(new PatternLayout(pattern));   
 
 append->setLayout( layout );   
 
 Logger logger = Logger::getInstance(L"Test logger");   
 
 logger.addAppender(append);   
 
 logger.setLogLevel(ALL_LOG_LEVEL);    
 
 LOG4CPLUS_DEBUG(logger, L"This is a debug log message");   
 LOG4CPLUS_WARN(logger, "This is a warn log message");

 LOG4CPLUS_ERROR(logger, "This is a error log message");

 return 0;
}

posted @ 2012-06-07 13:36  友学友  阅读(414)  评论(0)    收藏  举报