zlog 纯C日志函数库

本文介绍了zlog的下载、安装过程,包括如何解决动态库链接问题。讲解了zlog的使用,建议根据日志严重性分级打印,并提供了配置文件示例。文章还讨论了两种处理动态库的方法及其优缺点。
摘要由CSDN通过智能技术生成
  • zlog的下载与安装
    附:动态库链接时、执行时搜索路径顺序
  • zlog使用
  • zlog实例

下载:

http://hardysimpson.github.io/zlog/ 下载最新的zlog源码包 zlog-1.2.12.tar.gz。

编译与安装:

$tar -zxvf zlog-1.2.12.tar.gz
#解压
$cd zlog-1.2.12/
#进入目录
$make
#编译。在zlog-1.2.12/src/ 目录下生成libzlog.a 静态库和libzlog.so动态库。
$make install
#默认安装路径是/usr/local/ ; 或者make PREFIX=‘自己指定安装路径’ install。
#之后就可以将zlog-1.2.12/删掉。
$vi /etc/ld.so.conf
/usr/local/lib
$ldconfig
#保证libzlog.so在系统的动态链接库加载器可以找到的目录下

默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件,通常通过源码包进行安装时,如果不指定–prefix,会将库安装在/usr/local/lib目录下;当运行程序需要链接动态库时,提示找不到相关的.so库,会报错。也就是说,/usr/local/lib目录不在系统默认的库搜索目录中,需要将目录加进去。
  1、首先打开/etc/ld.so.conf文件
  2、加入动态库文件所在的目录:执行vi /etc/ld.so.conf,在"include ld.so.conf.d/*.conf"下方增加"/usr/local/lib"。
  3、保存后,需要运行一下ldconfig,使所有的库文件都被缓存到文件/etc/ld.so.cache中,如果没做,可能会找不到刚安装的库。

动态库链接时、执行时搜索路径顺序:

  • 编译目标代码时指定的动态库搜索路径;
  • 环境变量LD_LIBRARY_PATH指定的动态库搜索路径;
  • 配置文件/etc/ld.so.conf中指定的动态库搜索路径;
  • 默认的动态搜索路径/lib;
  • 默认的动态库搜索路径/usr/lib

zlog使用:

  • log建议分级打印,严重问题error,一般问题warn,信息info,调试debug
  • a.c文件中加头文件 #include “zlog.h”
  • 编译:gcc a.c -lzlog

zlog实例:

  1. zlog配置文件:
    大部分的zlog的行为都取决于配置文件,比如把日志打到哪里去,用什么格式,怎么转档,都由配置文件来决定。
    vim zlog.conf

    [formats]
    ms = "%d.%ms %m%n"
    us = "%d.%us %m%n"
    
    nu1 = "%m%n"
    nu2 = "%d(%m-%d %T) %-10V [%p:%F:%L] %m%n"
    nu3 = "%d(%m-%d %T) %-5c [%p:%F:%L] %m%n"
    
    [rules]
    my_cat.DEBUG    "./log/system/%d(%F).STAT"; ms  
    my_cat.DEBUG    >stdout; ms  
    my_cat2.INFO     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值