log4cplus的三个例程

简介:

Hello World  Example
#include <log4cplus/logger.h>
#include <log4cplus/configurator.h>
#include <iomanip>

using  namespace log4cplus;

int
main()
{
    BasicConfigurator config;
    config.configure();

    Logger logger = Logger::getInstance("main");
    LOG4CPLUS_WARN(logger, "Hello, World!");
     return 0;
}

ostream
 Example (Show how to write logging messages.)
None.gif#include <log4cplus/logger.h>
None.gif#include <log4cplus/configurator.h>
None.gif#include <iomanip>
None.gif
None.gif using  namespace std;
None.gif using  namespace log4cplus;
None.gif
None.gif int
None.gifmain()
ExpandedBlockStart.gif {
InBlock.gif    BasicConfigurator config;
InBlock.gif    config.configure();
InBlock.gif    Logger logger = Logger::getInstance("logger");
InBlock.gif
InBlock.gif    LOG4CPLUS_WARN(logger,   "This is"
InBlock.gif                           << " a reall"
InBlock.gif                           << "y long message." << endl
InBlock.gif                           << "Just testing it out" << endl
InBlock.gif                           << "What do you think?")
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a bool: " << true)
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a char: " << 'x')
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a short: " << (short)-100)
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a unsigned short: " << (unsigned short)100)
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a int: " << (int)1000)
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a unsigned int: " << (unsigned int)1000)
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a long(hex): " << hex << (long)100000000)
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a unsigned long: " 
InBlock.gif                   << (unsigned long)100000000)
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a float: " << (float)1.2345)
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a double: " 
InBlock.gif                          << setprecision(15) 
InBlock.gif                          << (double)1.2345234234)
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a long double: " 
InBlock.gif                          << setprecision(15) 
InBlock.gif                          << (long double)123452342342.342)
InBlock.gif
InBlock.gif    return 0;
ExpandedBlockEnd.gif}

None.gif

LogLevel  Example (Shows how log messages can be filtered at runtime by adjusting the LogLevel.)
None.gif#include <log4cplus/logger.h>
None.gif#include <log4cplus/configurator.h>
None.gif#include <iostream>
None.gif
None.gif using  namespace std;
None.gif using  namespace log4cplus;
None.gif
None.gifLogger logger = Logger::getInstance("main");
None.gif
None.gif void printMessages()
ExpandedBlockStart.gif {
InBlock.gif    LOG4CPLUS_TRACE(logger, "printMessages()");
InBlock.gif    LOG4CPLUS_DEBUG(logger, "This is a DEBUG message");
InBlock.gif    LOG4CPLUS_INFO(logger, "This is a INFO message");
InBlock.gif    LOG4CPLUS_WARN(logger, "This is a WARN message");
InBlock.gif    LOG4CPLUS_ERROR(logger, "This is a ERROR message");
InBlock.gif    LOG4CPLUS_FATAL(logger, "This is a FATAL message");
ExpandedBlockEnd.gif}

None.gif
None.gif
None.gif int
None.gifmain()
ExpandedBlockStart.gif {
InBlock.gif    BasicConfigurator config;
InBlock.gif    config.configure();
InBlock.gif
InBlock.gif    logger.setLogLevel(TRACE_LOG_LEVEL);
InBlock.gif    cout << "*** calling printMessages() with TRACE set: ***" << endl;
InBlock.gif    printMessages();
InBlock.gif
InBlock.gif    logger.setLogLevel(DEBUG_LOG_LEVEL);
InBlock.gif    cout << "\n*** calling printMessages() with DEBUG set: ***" << endl;
InBlock.gif    printMessages();
InBlock.gif
InBlock.gif    logger.setLogLevel(INFO_LOG_LEVEL);
InBlock.gif    cout << "\n*** calling printMessages() with INFO set: ***" << endl;
InBlock.gif    printMessages();
InBlock.gif
InBlock.gif    logger.setLogLevel(WARN_LOG_LEVEL);
InBlock.gif    cout << "\n*** calling printMessages() with WARN set: ***" << endl;
InBlock.gif    printMessages();
InBlock.gif
InBlock.gif    logger.setLogLevel(ERROR_LOG_LEVEL);
InBlock.gif    cout << "\n*** calling printMessages() with ERROR set: ***" << endl;
InBlock.gif    printMessages();
InBlock.gif
InBlock.gif    logger.setLogLevel(FATAL_LOG_LEVEL);
InBlock.gif    cout << "\n*** calling printMessages() with FATAL set: ***" << endl;
InBlock.gif    printMessages();
InBlock.gif
InBlock.gif    return 0;
ExpandedBlockEnd.gif}
目录
相关文章
|
Java 编译器 Linux
log4cplus最新介绍、详细编译过程及使用(最全面)(下)
log4cplus最新介绍、详细编译过程及使用(最全面)
解决办法:fatal error: SDL.h: 没有那个文件或目录
解决办法:fatal error: SDL.h: 没有那个文件或目录
311 0
|
5月前
|
C++
JNI Log 日志输出
JNI Log 日志输出
107 1
|
安全 Java Unix
log4cplus最新介绍、详细编译过程及使用(最全面)
log4cplus最新介绍、详细编译过程及使用(最全面)
【Log4cpp】项目日志Log4cpp的简单使用
【Log4cpp】项目日志Log4cpp的简单使用
我个人的log4cplus-1.2.2的编译与测试使用,Win7+VS2013环境
我个人的log4cplus-1.2.2的编译与测试使用,Win7+VS2013环境
548 0
|
监控 Java Linux
JVM致命错误日志(hs_err_pid.log)分析
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xmt1139057136/article/details/82880179 致命错误出现的时候,JVM 生成了 hs_err_pid.log 这样的文件,其中往往包含了虚拟机崩溃原因的重要信息。
2687 0
|
C语言
boost使用log库编译报错
使用boost的log,用以下链接选项: -lboost_system -lboost_thread -lboost_log -lboost_log_setup -lboost_filesystem -lpthread 当...
1686 0