【log4cpp_学习】1_log4cpp的安装
1_log4cpp的安装
- 1 log4cpp安装
- 2 log4cpp编译
- 3 测试代码
- 4 编译执行
1 log4cpp安装
- 下载地址:
https://sourceforge.net/projects/log4cpp/files/latest/download1
- 官网地址:
http://log4cpp.sf.net/
- 下载版本:
log4cpp-1.1.3.tar.gz
- CSDN零积分下载地址:
https://download.csdn.net/download/qq_38973710/85144544
2 log4cpp编译
tar -zxvf log4cpp-1.1.3.tar.gz
./configure
make
make install
编译完成后可以在/usr/local/
的对应目录种找到log4cpp的文件。
3 测试代码
创建源文件main.cpp
#include <unistd.h>
#include "log4cpp/Category.hh"
#include "log4cpp/Appender.hh"
#include "log4cpp/FileAppender.hh"
#include "log4cpp/OstreamAppender.hh"
#include "log4cpp/Layout.hh"
#include "log4cpp/BasicLayout.hh"
#include "log4cpp/Priority.hh"
#include "log4cpp/PropertyConfigurator.hh"
#include "log4cpp/SyslogAppender.hh"
#include "log4cpp/LoggingEvent.hh"
#include <log4cpp/PatternLayout.hh>int main(int argc, char *argv[])
{// 1. 实例化一个layout对象log4cpp::Layout * layout = new log4cpp::BasicLayout();// 2. 实例化一个appender对象log4cpp::Appender * appender = new log4cpp::FileAppender("FileAppender","./log4cpp.log");// 3. 将layout对象绑定在appender对象上appender->setLayout(layout);// 4. 实例化一个Category对象log4cpp::Category &warn_log = log4cpp::Category::getInstance("darren");// 5. 设置additivity为false,替换已有的appenderwarn_log.setAdditivity(false);// 6. 将appender对象绑定在Categoryd对象上warn_log.setAppender(appender);// 7. 设置Category的优先级,低于此优先级的日志不被记录warn_log.setPriority(log4cpp::Priority::INFO);// 8. 记录日志方式一warn_log.info("this is info message");warn_log.debug("this is debug message");warn_log.alert("this is alert message");// 9. 记录日志方式二warn_log.log(log4cpp::Priority::INFO, "THis is log INFO message!");// log4cpp::Priority::PriorityLevel priority;bool this_is_critical = true;if(this_is_critical){priority = log4cpp::Priority::CRIT;}else{priority = log4cpp::Priority::DEBUG;}warn_log.log(priority, "priority is [%d]",priority);warn_log.infoStream() << " This is info " << "message";// clean up and flush all appenderslog4cpp::Category::shutdown();return 0;
}
4 编译执行
g++ -o main main.cpp -llog4cpp -lpthread
./main
执行完后,会在同级目录下生成log4cpp.log
,其内容如下所示
【log4cpp_学习】1_log4cpp的安装相关推荐
- OracleDesigner学习笔记1――安装篇
OracleDesigner学习笔记1――安装篇 QQ:King MSN:qiutianwh@msn.com Email:qqking@gmail.com 一. 前言 Oracle是当 ...
- 用MXnet实战深度学习之一:安装GPU版mxnet并跑一个MNIST手写数字识别 (zz)
用MXnet实战深度学习之一:安装GPU版mxnet并跑一个MNIST手写数字识别 我想写一系列深度学习的简单实战教程,用mxnet做实现平台的实例代码简单讲解深度学习常用的一些技术方向和实战样例.这 ...
- youcans 的 OpenCV 学习课—1.安装与环境配置
youcans 的 OpenCV 学习课-1.安装与环境配置 作者: youcans@xupt 本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战. 什么叫从零开始?从软件安装. ...
- OMNeT学习之OMNeT安装与运行
OMNeT学习之OMNeT安装与运行 前言 本文原创,创作不易,转载请注明!!! 本人为OMNet初学者,如有错误,请不吝请教! 最近学WSN(无线传感器网络),做传感器实验,老师强调了仿真平台Mat ...
- Linux学习之VMware安装Linux
前言 之前写过一篇VirtualBox安装Linux过程,这里写一篇VMware安装Linux的过程 本文原创,创作不易,转载请注明!!! 本文链接 个人博客:https://ronglin.fun/ ...
- linux sipp 呼叫转移_SIPp 学习笔记 一 (安装)
SIPp学习笔记一(安装) SIPp可以用来测试各种sip的设备,如终端电话或者proxy,包括功能和性能上的(性能上只能在linux平台下才可以;)具体的描述可以去参照SIPp的官方网站; http ...
- homeassistant mysql_HomeAssistant学习笔记docker安装的ha更换数据库
HomeAssistant学习笔记docker安装的ha更换数据库 用了一段时间之后发现日志和历史打开的速度越来越慢,在论坛里查了半天发现是因为HA官方所用数据库导致,官方也给出了相关文档,https ...
- mesos 学习笔记-- mesos安装和配置
2019独角兽企业重金招聘Python工程师标准>>> mesos 学习笔记-- mesos安装和配置 博客分类: 架构 mesos 参考资料: 官方文档:http://mesos. ...
- new 动手学深度学习V2环境安装
动手学深度学习V2 环境安装 虚拟环境 d2l-zh安装 conda create -n d2l-zh -y python=3.8 pip pip install jupyter d2l torch ...
- mysql64位机安装和配置_MySQL学习第二天 安装和配置mysql winx64
一.安装方式 MySQL安装文件分为两种,一种是MSI格式的,一种是ZIP格式的.下面来看看这两种方式: MSI格式的可以直接点击安装,按照它给出的安装提示进行安装,Windows操作系统下一般MyS ...
最新文章
- 【电信增值业务学习笔记】8 3G视频类增值业务
- Spring Boot ApplicationContextRunner 测试指南
- 大数据WEB阶段 后台和页面之间传递日期格式数据的400问题
- 程序编程代码大全_CNC加工中心程序代码大全
- 数据结构与算法-原始版-a+b+c=1000并且a方+b方=c方
- android write file,Android Study Day 3 --Android File Read And Write
- 鸿蒙官网首页,鸿蒙官网-鸿蒙手游官网首页最新版预约 v1.0-优盘手机站
- Appium iOS 自动化测试总结
- linux之U盘读写速度测试
- freemyapps 推荐链接
- 微信小程序--实现按钮跳转另一个页面
- 九章算法 | 苏州微软面试题:程序检查
- 开发人员常用工具最全锦集(持续更新)
- 2-1. 厘米换算英尺英寸(15)
- 使用ML.NET实现德州扑克牌型分类器
- C:\KEIL\C51\intrins.h包含不正确的路径。Keil 头文件路径错误
- 《软件测试的艺术》万字笔记
- 数字证书与实现双向SSL认证
- 这样整理关键词,竞价推广更高效
- 智能车竞赛:关于车模系列的价格调整