歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

log4cxx-Linux 安裝調試

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文件

[cpp]
  1. #include <log4cxx/logger.h>   
  2. #include <log4cxx/logstring.h>   
  3. #include <log4cxx/propertyconfigurator.h>   
  4.   
  5. int main(int argc, char* argv[])  
  6. {  
  7.     using namespace log4cxx;  
  8.   
  9.     // 讀取配置文件   
  10.     PropertyConfigurator::configure("log4cxx.properties");  
  11.   
  12.     // 建立兩個logger   
  13.     LoggerPtr logger1 = Logger::getLogger("TraceYourMama");  
  14.     LoggerPtr logger2 = Logger::getLogger("Patch");  
  15.   
  16.     LOG4CXX_TRACE(logger1, "跟蹤");  
  17.     LOG4CXX_WARN(logger1, "警告");  
  18.     LOG4CXX_DEBUG(logger1, "調試");  
  19.     LOG4CXX_ASSERT(logger1, false"斷言");  
  20.     LOG4CXX_FATAL(logger1, "致命");  
  21.   
  22.     LOG4CXX_TRACE(logger2, "跟蹤");  
  23.     LOG4CXX_ERROR(logger2, "錯誤");  
  24.     return 0;  
  25. }  

2、編寫 log4cxx.properties 文件

[plain]
  1. # 設置root logger為DEBUG級別,使用了ca和fa兩個Appender  
  2. log4j.rootLogger=DEBUG, ca, fa  
  3.   
  4. #對Appender fa進行設置:  
  5. # 這是一個文件類型的Appender,  
  6. # 其輸出文件(File)為./output.log,  
  7. # 輸出方式(Append)為覆蓋方式,  
  8. # 輸出格式(layout)為PatternLayout  
  9. log4j.appender.fa=org.apache.log4j.FileAppender  
  10. log4j.appender.fa.File=./output.log  
  11. log4j.appender.fa.Append=false  
  12. log4j.appender.fa.layout=org.apache.log4j.PatternLayout  
  13. log4j.appender.fa.layout.ConversionPattern=%d [%t] %-5p %.16c - %m%n  
  14.   
  15. #對Appender ca進行設置  
  16. # 這是一個控制台類型的Appender  
  17. # 輸出格式(layout)為PatternLayout  
  18. log4j.appender.ca=org.apache.log4j.ConsoleAppender  
  19. log4j.appender.ca.layout=org.apache.log4j.PatternLayout  
  20. log4j.appender.ca.layout.ConversionPattern=%d [%t] %-5p %.16c - %m%n  

    編譯鏈接

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

    $./mian

Copyright © Linux教程網 All Rights Reserved