首页 > 其他分享 >log4cpp的安装及使用

log4cpp的安装及使用

时间:2024-07-15 19:29:43浏览次数:8  
标签:-% file 使用 include 安装 appender log4cpp

目录

前言

本文的操作均在ubuntu20.04下进行

安装

本文仅介绍从源码编译安装log4cpp的过程。

①在开始编译前,首先要确保系统中安装了g++makeautoconflibtool

②下载log4cpp源码
下载log4cpp的特定版本并解压,以1.1.3为例:

wget http://sourceforge.net/projects/log4cpp/files/log4cpp-1.1.3.tar.gz
tar -xvzf log4cpp-1.1.3.tar.gz

③编译和安装
进入log4cpp目录,使用autoconf来配置项目并编译安装:

cd log4cpp
# 默认安装
./configure
# 或指定安装路径
# ./configure --prefix=/path/to/file
make
make install

④查看头文件和库文件
默认配置安装的log4cpp,其头文件位于/usr/local/include/log4cpp/,库文件位于/usr/local/lib/

使用

示例代码

#include <string>
#include <iomanip>
#include "log4cpp/PropertyConfigurator.hh"
#include "log4cpp/Category.hh"

int main()
{
    try
    {
      log4cpp::PropertyConfigurator::configure("./cfg/log4cfg");
    }
    catch (log4cpp::ConfigureFailure& f)
    {
        std::cerr << "configure problem " << f.what() << std::endl;
        
    }
    log4cpp::Category & log = log4cpp::Category::getRoot();

    std::string s = __FILE__;
    s += " : ";
    std::ostringstream line;
    line << std::setw(4) << std::setfill('0') << __LINE__;
    s += line.str();
    s += " : ";
    std::ostringstream  buf;
    buf<< "test message"; ;
    s += buf.str();

    log.info(s);
}

配置文件

#顶级父元素配置
log4cpp.rootCategory=INFO,console,file
#文件输出配置
log4cpp.appender.file=RollingFileAppender        #滚动文件
log4cpp.appender.file.fileName=./log/data.log    #文件名称
log4cpp.appender.file.maxFileSize=524288000      #单个文件大小
log4cpp.appender.file.maxBackupIndex=10          #文件保存数量
log4cpp.appender.file.backupPattern=%Y-%m-%d    
log4cpp.appender.file.layout=PatternLayout       #layout格式
log4cpp.appender.file.layout.ConversionPattern=[%d{%Y-%m-%d %H:%M:%S,%l}](%p)<%t>%c %x: %m%n    #输出格式

#控制台输出配置       
log4cpp.appender.console=ConsoleAppender
log4cpp.appender.console.layout=PatternLayout
log4cpp.appender.console.layout.ConversionPattern=[%d{%Y-%m-%d %H:%M:%S,%l}](%p)<%t>%c %x: %m%n

编译链接

具体操作略
注意链接时要加上-llog4cpp -lpthread

输出

输出结果:

标签:-%,file,使用,include,安装,appender,log4cpp
From: https://www.cnblogs.com/paw5zx/p/18303848

相关文章

  • RabbitMQ 安装并成功启动后,无法访问http://127.0.0.1:15672/#/
    1.问题描述&解决:安装了最新版RabbitMQ,然后先正常启动也无法访问,然后网上搜呀搜,什么重启服务,使用管理员打开cmd,或者是使用管理员运行下图的RabbitMQservice-start,最后又尝试了rabbitmq-pluginsenablerabbitmq_management这个命令,都无法在火狐浏览器打开http://127.0.0.1:1......
  • Project2007-2021安装包分享:附网盘地址+安装步骤
    不得不承认,Project是从事项目管理人员最常用的软件之一,它不仅可以提高项目的效率,缩短项目开发周期,操作难度相对来说也比较小。也可以说,Project是一款专注于项目管理的桌面应用软件。它可以帮助用户制定项目计划、分派任务、管理资源、跟踪进度以及生成汇报等。MicrosoftProj......
  • 2. 解释器与PyCharm安装
    1.解释器安装官网选择解释器版本 建议选择比最新版本低2~3个版本,当前选择3.10建议不勾选添加到环境变量,后续手动添加; 自定义安装   ......
  • Vue3中,使用TSX/JSX编写的父组件,如何向子组件中传递具名插槽(slot)的内容
    子组件(Child)-模板代码:<template><divclass="child-component"><divclass="header-box"><slotname="header"></slot></div><slot></slot></div></tem......
  • Windows下C++动态链接库的生成以及使用
    目录一.前言二.生成动态链接库三.使用动态链接库四.其他一.前言这篇文章简单讨论一下Windows下如何使用VS生成和使用C++动态链接库,示例使用VS2022环境。二.生成动态链接库先创建C++项目-动态链接库(DLL)然后将默认生成的.h和.cpp文件清理干净,当然你也可以选择保......
  • 如何使用阿里云镜像加速
    有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top官方地址Ubuntu针对Docker客户端版本大于1.10.0的用户您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器sudomkdir-p/etc/dockersudotee/etc/dock......
  • 使用K8S部署的禅道怎么修改不使用容器自带的数据库而使用其他数据库
    使用K8S部署禅道参考https://www.cnblogs.com/minseo/p/17870641.html如果想要使用不使用容器内自带的数据库修改配置文件找到pvc原始文件位置修改配置文件修改以下配置文件#zentao/config/my.php修改数据库的地址,设置用户名和密码<?php$config->installed=......
  • Turtlebot3在ROS Gazebo中使用OpenCV检测并跟踪球体
    原文链接:https://www.youtube.com/watch?v=Rw6ATkORRG8   一个小巧的机器人在虚拟世界中敏捷地追踪着一个滚动的球体。Turtlebot3,一个搭载ROS操作系统的智能机器人,在Gazebo仿真环境中,利用OpenCV的神奇力量,展现出令人惊叹的视觉追踪能力。 Turtlebot3的"眼睛"是一台高清......
  • cout的使用
    C++语句结构#include"iostream"usingnamespacestd;intmain(){return0;}cout结构cout<<...<<...<<...<<endl;非数字,用""包裹数字可以""包围,也可以不包围输出单份内容cout<<"hello,word!"......
  • 通过手机去访问本地写的h5页面(使用同一个局域网)
    主要流程为:打开cmd,然后输入一行指令1.npminstallhttp-server-g(全局安装http-server,前提是有node环境,并且手机和电脑用的是同一个局域网内)2.然后通过cmd进入到你放html文件的文件夹内 3.通过http-server指令开启服务,cmd就会提示: ......