log4cplus mysql_CentOS 6.2下log4cplus的使用

本文介绍了log4cplus在CentOS 6.2系统下的安装与使用,包括如何配置和使用这个C/C++的日志库,以及如何将其与MySQL结合,实现日志的存储和管理。详细步骤包括下载、安装、配置和实例代码展示,适合需要在C/C++项目中实现日志管理的开发者参考。
摘要由CSDN通过智能技术生成

一、简介

log4cplus是一款优秀的基于C/C++的开源日志库。log4cplus具有线程安全,不用但心在多线程状态下写日志问题;使用灵活,可通过配置文件设置日志级别下输出位置,还可以在程序运行时动态设置日志输出级别,随心所欲掌控日志的输出;以及多粒度控制的特点。通过将信息划分优先级使其可以面向程序调试、运行、测试、和维护等全生命周期; 可以选择将信息输出到屏幕、文件、NT event log、甚至是远程服务器;通过指定策略对日志进行定期备份。可以满足大部分开发者对日志系统需求,功能全面。

二、安装

tar -xjf log4cplus-1.0.4.tar.bz2(解压缩),切换到解压缩路径下

安装:./configure;make;make install

这里已经安装成功,默认的路径lib库路径是/usr/local/lib/,头文件的位置:/usr/local/include/log4cplus

将/usr/local/lib下的和log4cplus相关的库都拷贝到/usr/lib,将头文件加到/etc/profile下的CPLUS_INCLUDE_PATH

三、使用

虽然功能强大,应该说log4cplus用起来还是比较复杂的,为了更好地使用它,先介绍一下它的基本要素。

Layouts      :布局器,控制输出消息的格式.

Appenders    :挂接器,与布局器紧密配合,将特定格式的消息输出到所挂接的设备终端

(如屏幕,文件等等)。

Logger       :记录器,保存并跟踪对象日志信息变更的实体,当你需要对一个对象进行

记录时,就需要生成一个logger。

Categories   :分类器,层次化(hierarchy)的结构,用于对被记录信息的分类,层次中

每一个节点维护一个logger的所有信息。

Priorities   :优先权,包括TRACE, DEBUG, INFO, WARNING, ERROR, FATAL。

示例1:

#include #include#include#include

using namespacestd;int main(int argc, char **argv)

{using namespacelog4cplus;

BasicConfigurator config;

config.configure();

Logger logger= Logger::getInstance("main");

LOG4CPLUS_ERROR(logger,"Hello, error!");

LOG4CPLUS_WARN(logger,"Hello, warn!");

LOG4CPLUS_INFO(logger,"Hello, info!");

LOG4CPLUS_DEBUG(logger,"Hello, debug!");return 0;

}

这个例子是最简单的,只使用到了Logger记录器。默认输出到屏幕。输出格式如下:

3542206b2067ffca4650d1ede0b098ed.png

示例二:

#include #include#include#include

using namespacestd;int main(int argc, char **argv)

{using namespacelog4cplus;

Logger logger= Logger::getInstance("main");

SharedAppenderPtr appender(newConsoleAppender());

std::string pattern = "%D{%m/%d/%y %H:%M:%S} %p - %m%n";

std::auto_ptr layout(newPatternLayout(pattern));

appender->setLayout(layout);

logger

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值