首页 > 其他分享 >log4cxx的使用模式

log4cxx的使用模式

时间:2023-06-18 14:01:12浏览次数:35  
标签:layout LOG 模式 appender 使用 DEBUG log4j log4cxx


log4cxx的使用模式

(金庆的专栏)

== 初始化配置 ==

Main.cpp中初始化配置.
如果不需要监视配置文件并自动重新配置,就不需要调用configureAndWatch().
执行目录下的log4j.properties是会自动读取的。

#include <log4cxx/propertyconfigurator.h> 


int main() 

{ 

    const long WATCH_MILLISECONDS = 5000; 

    log4cxx::PropertyConfigurator::configureAndWatch( 

        "log4j.properties", WATCH_MILLISECONDS); 

    ... 

}


== 辅助宏 ==

为log4cxx的使用建立辅助宏,如Log.h。
因为经常与boost::format配合使用,所以添加了该头文件。

// Log.h 

// log4cxx helper. 


#pragma once 


#include <boost/format.h> 

#include <log4cxx/logger.h> 


#define LOG_DEBUG(name, message) { \ 

    LOG4CXX_DEBUG(::log4cxx::Logger::getLogger(name), message); } 

... 

#define LOG_FATAL(name, message) { \ 

    LOG4CXX_FATAL(::log4cxx::Logger::getLogger(name), message); } 

     

== 使用宏 == 


在User.cpp中使用. 


#include "Log.h" 


const char LOG[] = "User"; 


void foo() 

{ 

    LOG_DEBUG(LOG, boost::format("%1% %2%") % "Hello" % "World"); 

    ... 

} 


== log4j.properties ==



配置文件 log4j.properties 如下:

log4j.debug = true 


#log4j.rootLogger = WARN, R 

log4j.rootLogger = INFO, R, C 


log4j.appender.R = org.apache.log4j.RollingFileAppender 

log4j.appender.R.File = log.txt 

log4j.appender.R.MaxBackupIndex = 100 

log4j.appender.R.layout = org.apache.log4j.PatternLayout 

log4j.appender.R.layout.ConversionPattern = %d %5p %c %x - %m%n 


log4j.appender.C = org.apache.log4j.ConsoleAppender 

log4j.appender.C.layout = org.apache.log4j.PatternLayout 

log4j.appender.C.layout.ConversioinPattern = %d %5p %c %x - %m%n 


# Levels: DEBUG, INFO, WARN, ERROR, FATAL 

log4j.logger.main = INFO 

log4j.logger.User = DEBUG




标签:layout,LOG,模式,appender,使用,DEBUG,log4j,log4cxx
From: https://blog.51cto.com/u_16162321/6508363

相关文章

  • Windows中安装和使用Kafka
    ......
  • 使用以下命令来禁用 Windows Server 2022 上的密码复杂性要求
    使用以下命令来禁用WindowsServer2022上的密码复杂性要求:打开记事本,将以下命令复制粘贴到记事本中:netaccounts/minpwlen:0netaccounts/maxpwage:unlimitednetaccounts/minpwage:0将文件保存为后缀名为.bat的批处理文件,比如"disable_password_complexity.bat"。......
  • 使用以下命令来关闭 Windows Server 2022 上的 Internet Explorer 安全增强
    使用以下命令来关闭WindowsServer2022上的InternetExplorer安全增强:打开记事本,将以下命令复制粘贴到记事本中:@echooffregadd"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ActiveSetup\InstalledComponents{A509B1A7-37EF-4b3f-8CFC-4F3A74704073}"/vIsInstalled/tR......
  • 使用以下命令来禁止 Windows Server 2022 在登录时自动启动服务器管理器
    使用以下命令来禁止WindowsServer2022在登录时自动启动服务器管理器:打开记事本,将以下命令复制粘贴到记事本中:regadd"HKLM\Software\Microsoft\ServerManager"/vDoNotOpenServerManagerAtLogon/tREG_DWORD/d1/f将文件保存为后缀名为.bat的批处理文件,比如"disabl......
  • k8s 梳理及使用总结
    ---1.Kubernetes概述1.最初Google开发了1个叫Borg的系统(现在命名为Omega),来调度近20多亿个容器从2014年第1个版本发布以来,迅速得到了开源社区的追捧,?前,k8s已经成为了发展最快、市场占有率最高的容器编排引擎产品。---2.特点轻量级,资源消耗小开源弹性伸缩负载均衡IPVS---3.重要......
  • 镜像,容器,容器数据卷,DockerFile 相关命令 使用总结
    镜像,容器,容器数据卷,DockerFile相关命令使用总结镜像是1种轻量级、可执行的独立的软件包。包含:代码,运行时,库,环境变量和配置文件。所有软件包,直接打包docker镜像,就可以直接跑起来.独立的运行环境。一.镜像命令1.列出本机所有镜像,查看镜像dockerimages2.搜索镜像dockersearc......
  • coredb 使用pg all-in-one 解决方案
    coredb认为可以使用pg干任何事情,自己基于rust开发了不少pg的扩展,当然也包含了不少社区现有的扩展同时coredb还开发了一个pg扩展仓库(实际上以前社区也有一个)说明目前coredb还在开发中,核心技术栈基于了rust,一些理念还是值得学习参考的参考资料https://docs.coredb.io/https://......
  • 使用以下命令将 Windows Server 2022 上的 Bluetooth 服务全部设置为自动启动
    使用以下命令将WindowsServer2022上的Bluetooth服务全部设置为自动启动:打开记事本,将以下命令复制粘贴到记事本中:scconfigbthservstart=autoscconfigBluetoothAudioGatewayServicestart=autoscconfigBluetoothAVRCPServicestart=autoscconfigBluetoothUse......
  • 使用命令行进行基于Git的简易代码管理
    继上个vscode图形化使用Git管理之后,发现日常工作有一种pipe不太灵,存在问题:gitclone别人的仓库(下来的最外层目录先叫“工程目录”);在工程目录下,修改代码;gitclone自己远程创建的仓库(eg.gitee);cp-r别人工程目录自己工程目录;自己的工程目录下查看:已发生文件的增添。但这时......
  • MFC练习2:使用Picture Control控件显示图片
    该方式优点是可以显示JPG等其它格式的图片。一、实验步骤1、使用MFC应用程序向导添加基于对话框的项目;2、在资源视图中拖控件设计UI界面,包含PictureControl和Button共2个控件;3、修改PictureControl控件的Type为Bitmap;4、双击Button按钮编写如下代码voidCpicTestDlg::......