linux log4cplus安装和实例
2024-09-03 07:34:55
tar –xvf log4cplus-1.1.3-rc5.tar.gz
cd log4cplus-1.1.3-rc5
configure --prefix=/usr/local/log4cplus
make
make install
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/log4cplus/lib/
g++ -g test_log4cplus.cpp -o process -I/usr/local/log4cplus/include -L/usr/local/log4cplus/lib -llog4cplus -lrt -lpthread
#include <iostream>
#include <log4cplus/logger.h>
#include <log4cplus/loggingmacros.h>
#include <log4cplus/configurator.h>
#include <iomanip>
#include <log4cplus/logger.h>
#include <log4cplus/fileappender.h>
#include <log4cplus/consoleappender.h>
#include <log4cplus/layout.h>
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
using namespace log4cplus;
int main()
{
/* step 1: Instantiate an appender object */
SharedAppenderPtr _append(new ConsoleAppender());
_append->setName(LOG4CPLUS_TEXT("ConsoleAppender"));
/* step 2: Instantiate a layout object */
//std::string pattern = ;
std::auto_ptr<Layout> _layout(new PatternLayout(LOG4CPLUS_TEXT("%D{%m/%d/%y %H:%M:%S} - %m [%l]%n")));
/* step 3: Attach the layout object to the appender */
_append->setLayout(_layout);
/* step 4: Instantiate a logger object */
Logger _logger = Logger::getInstance(LOG4CPLUS_TEXT("test"));
/* step 5: Attach the appender object to the logger */
_logger.addAppender(_append);
/* step 6: Set a priority for the logger */
_logger.setLogLevel(WARN_LOG_LEVEL);
/* log activity */
LOG4CPLUS_DEBUG(_logger, "This is the FIRST log message");
LOG4CPLUS_WARN(_logger, "This is the SECOND log message");
LOG4CPLUS_TRACE(_logger, "This is" << " just a t" << "est." << std::endl);
LOG4CPLUS_DEBUG(_logger, "This is a bool: " << true);
LOG4CPLUS_INFO(_logger, "This is a char: " << 'x');
LOG4CPLUS_WARN(_logger, "This is a int: " << );
LOG4CPLUS_ERROR(_logger, "This is a long(hex): " << std::hex << );
LOG4CPLUS_FATAL(_logger, "This is a double: " << std::setprecision() << 1.2345234234);
return ;
}
最新文章
- Js制作点击输入框时默认文字消失的效果
- leetcode面试准备:Implement Trie (Prefix Tree)
- HTTP meta 设置方法
- PHP发红包程序
- view和activity的区别(转)
- 《图书管理系统——java》
- Java学习笔记14---this作为返回值时返回的是什么
- C. Queen Codeforces Round #549 (Div. 2) (搜索)
- Linux删除/boot后该如何恢复
- cocos2dx 3.3 笔记
- win10下Redis安装
- 『计算机视觉』Mask-RCNN_训练网络其三:训练Model
- OpenStack的八年之痒
- Python之路,第十九篇:Python入门与基础19
- 使用命名管道的OVERLAPPED方式实现非阻塞模式编程 .
- PI3HDX1204B
- Spring 3整合Quartz 2实现定时任务:动态添加任务
- python基础=== itertools介绍(转载)
- css画扇形按钮
- shell 字符串处理汇总(查找,替换等等)