当前访客身份:游客 [ 登录 | 加入开源中国 ]

开源项目

当前位置:添加开源项目»
项目分类 » 日志工具(Logging) » zlog

zlog logo 纯C日志函数库 zlog 编辑/纠错

分享到 
已用    +13
收藏 +0

9月13日#成都#源创会,Swift、Docker、云计算、大数据!

星星之火,可以燎原

zlog是一个高性能、线程安全、灵活、概念清晰的纯C日志函数库。

事实上,在C的世界里面没有特别好的日志函数库(就像JAVA里面的的log4j,或者C++的log4cxx)。C程序员都喜欢用自己的轮子。printf就是个挺好的轮子,但没办法通过配置改变日志的格式或者输出文件。syslog是个系统级别的轮子,不过速度慢,而且功能比较单调。log4c异常坑爹(有内存泄漏、效率低等等),而且已经停止开发

所以我(难易)写了zlog。 

zlog有这些特性:


 *  syslog分类模型,基于规则路由过滤,比log4j模型要正确高效,详见为什么log4j的概念模型是错误的

 *  日志格式定制,类似于log4j的pattern layout

 *  多种输出,包括动态文件、静态文件、stdout、stderr、syslog、用户自定义输出函数

 *  运行时手动或自动刷新配置(同时保证安全)

 *  高性能,在我的笔记本上达到338'638条日志每秒, 大概是syslog(3)配合rsyslogd的1000倍速度 

 *  高可靠性和速度之间的平衡,用户自定义多少条日志后fsync数据到硬盘

 *  用户自定义等级

 *  多线程和多进程环境下保证安全转档

 *  精确到微秒

 *  简单调用包装dzlog(一个程序默认只用一个分类)

 *  MDC,线程键-值对的表,可以扩展用户自定义的字段

 *  自诊断,可以在运行时输出zlog自己的日志和配置状态

 *  不依赖其他库,只要是个POSIX系统就成(当然还要一个C99兼容的vsnprintf)

网友提供的其他版本,方便其他平台安装

auto tools版本: https://github.com/bmanojlovic/zlog
cmake版本:https://github.com/lisongmin/zlog
windows版本: https://github.com/lopsd07/WinZlog

zlog最新更新资讯,共13条  (投递新闻查看所有»)
janse_zyd

动态日志文件输出时效率问题

janse_zyd 发表于6天前 ,最后回答(2天前):janse_zyd»

  • 2回答
  • 0投票
  • 45浏览
ElisenYuan

zlog有移植到ARM上的吗?

ElisenYuan 发表于2个月前 ,最后回答(2个月前):难易»

  • 2回答
  • 0投票
  • 84浏览
mysigns

zlog现在是停止更新了?

mysigns 发表于3个月前 ,最后回答(2个月前):难易»

  • 1回答
  • 0投票
  • 177浏览
周红LOL

为什么多线程的zlog比log4c要慢?

周红LOL 发表于5个月前 ,最后回答(5个月前):难易»

  • 1回答
  • 0投票
  • 366浏览
难易

zlog的下载超过250,但没有人提问题给我……

难易 发表于2年前 ,最后回答(5个月前):周红LOL»

  • 24回答
  • 0投票
  • 1516浏览
周红LOL

zlog在多线程访问的时候并不比log4c快,反倒是单线程比log4c...

周红LOL 发表于5个月前

  • 0回答
  • 0投票
  • 110浏览
苍穹天禧

根据不同级别(debug\error\info\trace)的信息对应不同的颜色...

苍穹天禧 发表于5个月前 ,最后回答(5个月前):难易»

  • 3回答
  • 0投票
  • 90浏览
mysigns

hex log里面,建议可以设置一个提示

mysigns 发表于5个月前

  • 0回答
  • 0投票
  • 21浏览
gpwang2000

zlog内容能否组织出syslog格式的文本

gpwang2000 发表于6个月前 ,最后回答(6个月前):gpwang2000»

  • 2回答
  • 0投票
  • 85浏览
calder

windows版本zlog文件转存问题

calder 发表于1年前 ,最后回答(8个月前):micro66»

  • 6回答
  • 0投票
  • 351浏览
weslemin

日志路径动态?自动创建?

weslemin 发表于9个月前 ,最后回答(9个月前):难易»

  • 2回答
  • 0投票
  • 98浏览
难易

纯C日志函数库--zlog上手指南

难易 发表于2年前 ,最后回答(9个月前):eel»

  • 20回答
  • 0投票
  • 2137浏览
bytecache

测试zlog写入速度,对短日志不利

bytecache 发表于9个月前 ,最后回答(9个月前):宏哥»

  • 4回答
  • 0投票
  • 311浏览
_ray

zlog.h头文件疑问

_ray 发表于9个月前 ,最后回答(9个月前):_ray»

  • 2回答
  • 0投票
  • 71浏览
Jack_Will

zlog的1.2.7版本支持多进程下使用吗

Jack_Will 发表于9个月前 ,最后回答(9个月前):难易»

  • 1回答
  • 0投票
  • 121浏览
难易

zlog 2.0 开发中

难易 发表于1年前 ,最后回答(10个月前):难易»

  • 3回答
  • 0投票
  • 354浏览
micro66

zlog win 式样换行符

micro66 发表于1年前 ,最后回答(10个月前):江南浪子»

  • 2回答
  • 0投票
  • 84浏览
goodcyg

zlog能实时输出的日志?

goodcyg 发表于11个月前 ,最后回答(11个月前):goodcyg»

  • 2回答
  • 0投票
  • 225浏览
ningos

在记录日志的过程中发现有几秒钟没有记录。

ningos 发表于1年前

  • 0回答
  • 0投票
  • 85浏览
难易

进程间通信(IPC)是否速度比直接写文件要慢?

难易 发表于1年前 ,最后回答(1年前):难易»

  • 3回答
  • 0投票
  • 459浏览
更多zlog的问题 »
难易 作者:@难易
发送私信 我要提问/分享
已发布:)
  • mymiss mymiss软件不错 比较适合程序调试时候使用,但是对于性能要求比较高的程序貌似系统占用CPU太高了 伤不起呀 zlog 8个月前 (1评)
  • summer summer最近用zlog 1年前 (0评)
  • 难易 难易zlog 1.0.3 发布,支持动态的定义每多少条文件fsync一次日志,以及定期加载配置文件 zlog 2年前 (0评)
显示所有 » 共有 116 个类似软件