当前位置: 首页 > 工具软件 > log4cxx > 使用案例 >

log4cxx-linux 安装调试

蔚承天
2023-12-01

1、介绍:

                 一个项目的服务器端在Linux平台下,用到了开源日志库log4cxx,这个库是apache项目的一个子库。功能很不错。下面记录下它的编译和安装过程。

log4cxx的官方下载地址是http://logging.apache.org/log4cxx/index.html,我用的是0.10.0版本。

        linux版本:centos5.3

2、下载

             为了编译它,还需要两个辅助库,apr,和apr-util,可以在这里下载http://apr.apache.org/download.cgi,下载 unix版本apr-1.4.5.tar.gzapr-util-1.3.12.tar.gz

3、编译安装

1)第一步安装apr-1.4.5,顺序不能错,它必须首选安装

      $tar zxvf apr-1.4.5.tar.gz

      $cd apr-1.4.

      $./configure --prefix=/usr/local

      $make

      $su root

      $make install

2)然后安装apr-util-1.3.12

     $tar zxvf apr-util-1.3.12.tar.gz

     $cd apr-util-1.3.12

     $./configure --prefix=/usr/local --with-apr=/usr/local/apr

     $make

     $su root

   $make install

   configure选项 --with-apr=/usr/local/apr指定apr库的位置

3)最后就可以安装log4cxx了

       $tar zxvf apache-log4cxx-0.10.0.tar.gz

       $cd apache-log4cxx-0.10.0

       $configure --prefix==/usr/local

       $make

       $su root

       $make install

4)添加共享链接库

export   LD_LIBRARY_PATH=/usr/local/lib

OK,至此log4cxx就安装完毕了。

4、测试程序。

1)新建main.cpp文件

#include <log4cxx/logger.h>
#include <log4cxx/logstring.h>
#include <log4cxx/propertyconfigurator.h>

int main(int argc, char* argv[])
{
    using namespace log4cxx;

    // 读取配置文件
    PropertyConfigurator::configure("log4cxx.properties");

    // 建立两个logger
    LoggerPtr logger1 = Logger::getLogger("TraceYourMama");
    LoggerPtr logger2 = Logger::getLogger("Patch");

    LOG4CXX_TRACE(logger1, "跟踪");
    LOG4CXX_WARN(logger1, "警告");
    LOG4CXX_DEBUG(logger1, "调试");
    LOG4CXX_ASSERT(logger1, false, "断言");
    LOG4CXX_FATAL(logger1, "致命");

    LOG4CXX_TRACE(logger2, "跟踪");
    LOG4CXX_ERROR(logger2, "错误");
    return 0;
}

2、编写 log4cxx.properties 文件

# 设置root logger为DEBUG级别,使用了ca和fa两个Appender
log4j.rootLogger=DEBUG, ca, fa

#对Appender fa进行设置:
# 这是一个文件类型的Appender,
# 其输出文件(File)为./output.log,
# 输出方式(Append)为覆盖方式,
# 输出格式(layout)为PatternLayout
log4j.appender.fa=org.apache.log4j.FileAppender
log4j.appender.fa.File=./output.log
log4j.appender.fa.Append=false
log4j.appender.fa.layout=org.apache.log4j.PatternLayout
log4j.appender.fa.layout.ConversionPattern=%d [%t] %-5p %.16c - %m%n

#对Appender ca进行设置
# 这是一个控制台类型的Appender
# 输出格式(layout)为PatternLayout
log4j.appender.ca=org.apache.log4j.ConsoleAppender
log4j.appender.ca.layout=org.apache.log4j.PatternLayout
log4j.appender.ca.layout.ConversionPattern=%d [%t] %-5p %.16c - %m%n


    编译链接

    $g++ -o main main.cpp -llog4cxx

    $./mian


 类似资料: