摘要:
#include "stdlog.h"#include <log4cplus/logger.h>#include <log4cplus/consoleappender.h>#include <log4cplus/fileappender.h>#include <log4cplus/layout.h>#include <cstdio>#include <cstdarg>#include <vector>#include <sstream>// #include <iostre 阅读全文
posted @ 2012-04-25 17:58
笑笑小白
阅读(1605)
评论(0)
推荐(0)
摘要:
网上一个热心的大牛分享了一个c++配置类,如下:Config.h[cpp]view plaincopy//Config.h#pragmaonce#include<string>#include<map>#include<iostream>#include<fstream>#include<sstream>/**\briefGenericconfigurationClass**/classConfig{//Dataprotected:std::stringm_Delimiter;//!<separatorbetweenkeyand 阅读全文
posted @ 2012-04-25 17:53
笑笑小白
阅读(949)
评论(0)
推荐(0)
摘要:
1. 简介log4cplus是C++编写的开源的日志系统,The purpose of this project is to port the excellentLog for Java(log4j)logging library to C++。log4cplus具有灵活、强大、使用简单、多线程安全的特点,实在是杂牌军、游击队的福音。2. 安装使用(Linux)log4cplus安装使用非常简单,从其官网:http://log4cplus.sourceforge.net/ 下载最新版本运行:tar xvzf log4cplus-x.x.x.tar.gzcd log4cplus-x.x.x./c 阅读全文
posted @ 2012-04-25 14:46
笑笑小白
阅读(7179)
评论(1)
推荐(0)
摘要:
网上一个热心的大牛分享了一个c++配置类,如下:Config.h[cpp]view plaincopy//Config.h#pragmaonce#include<string>#include<map>#include<iostream>#include<fstream>#include<sstream>/**\briefGenericconfigurationClass**/classConfig{//Dataprotected:std::stringm_Delimiter;//!<separatorbetweenkeyand 阅读全文
posted @ 2012-04-25 14:45
笑笑小白
阅读(674)
评论(0)
推荐(0)
摘要:
1 下载log4cpp并解压。2 打开\log4cpp-0.3.4b\msvc6\msvc6.dsw 编译log4cpp工程Release版。3 将编译后的log4cpp.lib复制到VC的Lib目录中。4 将头文件的目录log4cpp-0.3.4b\include\log4cpp\ 复制到VC的Include目录. (或者添加log4cpp-0.3.4b\include到VC的Include环境变量)6 目标工程包含库log4cpp.lib ws2_32.lib(要选择库连接方式相同的库)5 包含头文件日志记录#include日志配置读取#includeNDC#include9 日志代码每个 阅读全文
posted @ 2012-04-25 11:58
笑笑小白
阅读(2444)
评论(1)
推荐(0)
摘要:
tar格式: tar [选项] [文件目录列表]功能: 对文件目录进行打包备份选项:-c 建立新的归档文件-r 向归档文件末尾追加文件-x 从归档文件中解出文件-O 将文件解开到标准输出-v 处理过程中输出相关信息-f 对普通文件操作-z 调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩-Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩1.用tar打包一个目录下的文件:#tar -cvf /mnt/lgx/a1.doc生成一个以.tar为扩展名的打包文件2.用tar解开打包文件:#tar -xvf /mnt/lgx/a1.doc.tar通常情况下 阅读全文
posted @ 2012-04-25 09:44
笑笑小白
阅读(4857)
评论(0)
推荐(0)
摘要:
log4cplus在很多方面做的都很出色,但是使用过程有些地方感觉不爽。在继续吹捧之前我先把不爽之处稍微提一提,然后继续介绍关于线程和套接字的知识。### 一些可以改进之处 ###1. 用户自定义LogLevel的实现机制不够开放在第五篇中曾经介绍过如何实现用户自行定义LogLevel,为了实现比较理想的效果,甚至还需要改log4cplus的源代码。:(2. 生成Logger对象的机制可以改进我在使用时候,经常需要在不同的文件、函数中操作同一个logger,虽然log4cplus实现了树状存储以及根据名称生成Logger,却没有充分利用这样的特点确保同一个名称对应的logger对象的唯一性,比 阅读全文
posted @ 2012-04-25 09:40
笑笑小白
阅读(1010)
评论(0)
推荐(0)
摘要:
经过短暂的熟悉过程,log4cplus已经被成功应用到了我的项目中去了,效果还不错,:)除了上文提及的功能之外,下面将介绍log4cplus提供的线程和套接字的使用情况。### NDC ###首先我们先了解一下log4cplus中嵌入诊断上下文(Nested Diagnostic Context),即NDC。对log系统而言,当输入源可能不止一个,而只有一个输出时,往往需要分辩所要输出消息的来源,比如服务器处理来自不同客户端的消息时就需要作此判断,NDC可以为交错显示的信息打上一个标记(stamp), 使得辨认工作看起来比较容易些,呵呵。这个标记是线程特有的,利用了线程局部存储机制,称为线程私 阅读全文
posted @ 2012-04-25 09:40
笑笑小白
阅读(1567)
评论(0)
推荐(0)
摘要:
日志系统的另一个基本功能就是能够让使用者按照自己的意愿来控制什么时候,哪些log信息可以输出。如果能够让用户在任意时刻设置允许输出的LogLevel的信息就好了,log4cplus通过LogLevelManager、LogLog、Filter三种方式实现了上述功能。### 优先级控制 ###在研究LogLevelManager之前,首先介绍一下log4cplus中logger的存储机制,在log4cplus中,所有logger都通过一个层次化的结构(其实内部是hash表)来组织的,有一个Root级别的logger,可以通过以下方法获取: Logger root = Logger::getRoo 阅读全文
posted @ 2012-04-25 09:39
笑笑小白
阅读(2818)
评论(0)
推荐(1)
摘要:
本文介绍了三种控制输出格式的布局管理器的概念和使用情况,通过掌握这些知识,可以更有效地控制log系统输出尽可能贴近你需求的信息来。### 如何控制输出消息的格式 ###前面已经讲过,log4cplus通过布局器(Layouts)来控制输出的格式,log4cplus提供了三种类型的Layouts,分别是SimpleLayout、PatternLayout、和TTCCLayout。其中:1. SimpleLayout是一种简单格式的布局器,在输出的原始信息之前加上LogLevel和一个"-"。比如以下代码片段: ... ... /* step 1: Instantiate an 阅读全文
posted @ 2012-04-25 09:38
笑笑小白
阅读(3161)
评论(0)
推荐(1)
摘要:
将log信息记录到文件应该说是日志系统的一个基本功能,log4cplus在此基础上,提供了更多的功能,可以按照你预先设定的大小来决定是否转储,当超过该大小,后续log信息会另存到新文件中,依次类推;或者按照日期来决定是否转储。本文将详细介绍这些用法。### 如何将log记录到文件 ###我们在例5中给出了一个将log记录到文件的例子,用的是FileAppender类实现的,log4cplus提供了三个类用于文件操作,它们是FileAppender类、RollingFileAppender类、DailyRollingFileAppender类。1. FileAppender类实现了基本的文件操作 阅读全文
posted @ 2012-04-25 09:38
笑笑小白
阅读(2983)
评论(0)
推荐(1)
摘要:
本文介绍了使用log4cplus有六个步骤,并提供了一些例子引导你了解log4cplus的基本使用。### 基本使用 ###使用log4cplus有六个基本步骤:1. 实例化一个appender对象2. 实例化一个layout对象3. 将layout对象绑定(attach)到appender对象4. 实例化一个logger对象,调用静态函数:log4cplus::Logger::getInstance("logger_name")5. 将appender对象绑定(attach)到logger对象,如省略此步骤,标准输出(屏幕)appender对象会绑定到logger6. 设 阅读全文
posted @ 2012-04-25 09:37
笑笑小白
阅读(1980)
评论(0)
推荐(0)
摘要:
log4cplus是C++编写的开源的日志系统,功能非常全面,用到自己开发的工程中会比较专业的,:),本文介绍了log4cplus基本概念,以及如何安装,配置。### 简介 ###log4cplus是C++编写的开源的日志系统,前身是java编写的log4j系统.受Apache Software License保护。作者是Tad E. Smith。log4cplus具有线程安全、灵活、以及多粒度控制的特点,通过将信息划分优先级使其可以面向程序调试、运行、测试、和维护等全生命周期; 你可以选择将信息输出到屏幕、文件、NT event log、甚至是远程服务器;通过指定策略对日志进行定期备份等等。 阅读全文
posted @ 2012-04-25 09:35
笑笑小白
阅读(2097)
评论(1)
推荐(0)

浙公网安备 33010602011771号