#log4z# 常用日志库log4z

共 3902字,需浏览 8分钟

 ·

2024-07-04 22:49



 文章所涉及内容更多来自网络,在此声明,并感谢知识的贡献者!




Log4z 简介



Log4z简介


Log4z [1-3]是一款开源的轻量级的C++跨平台日志库 主要针对7*24小时服务器程序的日志输出与跟踪调试,支持64/32位的debian, redhat, centos, suse, windows等多操作系统.




Log4z 特点



Log4z 特点


-MIT开源授权 授权的限制非常小.


-跨平台支持linux和windows, 轻量级 只有一个头文件和一个cpp文件.


-支持多日志分流,滚动日志记录, 优先级过滤, 多线程安全.


-屏显日志彩色输出.


-支持格式化形式和流形式输入日志.


-可通过配置文件配置并进行配置热更新,也可以不做任何配置直接快速使用.


-  非常高的吞吐和序列化性能, 针对单线程和多线程下的指令级调优. 80万/sec的复杂类型的日志写入速度,和200万/sec的单一字符串写入速度.    




Log4z 资源



Log4z 资源


https://github.com/zsummer/log4z




Log4z 教程



Log4z 教程:


导入使用


Add files log4z.cpp log4z.h and compile together in the existing projects


把文件 log4z.cpp log4z.h添加到已有项目中并一起编译.


windows下把log4z.h log4z.cpp加入工程.


linux下类似


g++ -lpthread -o test   main.cpp   ../log4z.cpp


高级用法


在源码目录中的文件夹中有关于log4z高级用法


stress_test.cpp 对log4z进行压力测试,包括多线程测试,统计日志库的速度


advanced_test.cpp 针对log4z的一些高级用法,采用配置文件,配置日志的记录规则,


stress_test.cpp 针对log4z进行速度测试




Log4z 示例



Log4z 范例:


#include "log4z.h"  


  using namespace zsummer::log4z;  


  int main(int argc, char *argv[])  


  {  


      //start log4z  


      ILog4zManager::getRef().start();  


      


      //begin test stream log input....  


      LOGT("stream input *** " << "LOGT LOGT LOGT LOGT" << " *** ");  


      LOGD("stream input *** " << "LOGD LOGD LOGD LOGD" << " *** ");  


      LOGI("stream input *** " << "LOGI LOGI LOGI LOGI" << " *** ");  


      LOGW("stream input *** " << "LOGW LOGW LOGW LOGW" << " *** ");  


      LOGE("stream input *** " << "LOGE LOGE LOGE LOGE" << " *** ");  


      LOGA("stream input *** " << "LOGA LOGA LOGA LOGA" << " *** ");  


      LOGF("stream input *** " << "LOGF LOGF LOGF LOGF" << " *** ");  


  


      // cannot support VC6 or VS2003  


      //begin test format log input....  


      LOGFMTT("format input *** %s *** %d ***", "LOGFMTT", 123456);  


      LOGFMTD("format input *** %s *** %d ***", "LOGFMTD", 123456);  


      LOGFMTI("format input *** %s *** %d ***", "LOGFMTI", 123456);  


      LOGFMTW("format input *** %s *** %d ***", "LOGFMTW", 123456);  


      LOGFMTE("format input *** %s *** %d ***", "LOGFMTE", 123456);  


      LOGFMTA("format input *** %s *** %d ***", "LOGFMTA", 123456);  


      LOGFMTF("format input *** %s *** %d ***", "LOGFMTF", 123456);  


  


      LOGA("main quit ...");  


      return 0;  




Log4z 格式



log4z 格式





Log4z 性能



Log4z 性能





惨老资料



参考资料


Log4j详细使用教程_@log4j加入包后如何使用-CSDN博客


https://blog.csdn.net/haluoluo211/article/details/52075266


log4z_百度百科 (baidu.com)


https://baike.baidu.com/item/log4z/1909442?fr=ge_ala


GitHub - zsummer/log4z: Log4z is an open source C++ lightweight & cross platform log library


https://github.com/zsummer/log4z


log4z_51CTO博客_log4z 日志库自动覆盖


https://blog.51cto.com/u_15127697/4170151


log4z 快速使用教程-CSDN博客


https://blog.csdn.net/hhduyc/article/details/86551178


linux 日志库调试,log4z日志库使用-CSDN博客


https://blog.csdn.net/weixin_33622555/article/details/116843589


【深入探究 C++ 日志库性能比较】glog、log4cplus 和 spdlog 的日志输出性能分析_glog 异步-CSDN博客


https://blog.csdn.net/qq_21438461/article/details/134098605





浏览 61
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报