zlog】的更多相关文章

1.使用buildroot编译zlog,在工具链的系统根目录下会生成动态库和静态库,还添加了头文件. 2.把动态库拷贝到开发板文件系统(该文件系统可以不是由buildroot编译得到,而是板上自带的) 动态库有三个文件名,两个是链接文件,将名字最长的那个(真正的动态库)复制到开发板,然后后要重新建立链接 ln -s libzlog.so.1.2 libzlog.so.1 ln -s libzlog.so.1 libzlog.so 3.编译程序…
mylog.h #ifndef _MY_LOG_H #define _MY_LOG_H int init(char *filename); void *get_category(char * cateory_name); void info(void *category, char *message); void debug(void *category, char *message); void fini(); #endif mylog.c #include "zlog.h" #in…
test.c #include <stdio.h> #include "zlog.h" int main(int argc, char** argv) { int rc; zlog_category_t *c; rc = zlog_init("test_hello.conf"); if (rc) { printf("init failed\n"); return -; } c = zlog_get_category("my_…
http://hardysimpson.github.io/zlog/UsersGuide-CN.html Chapter 1 zlog是什么? zlog是一个高可靠性.高性能.线程安全.灵活.概念清晰的纯C日志函数库. 事实上,在C的世界里面没有特别好的日志函数库(就像JAVA里面的的log4j,或者C++的log4cxx).C程序员都喜欢用自己的轮子.printf就是个挺好的轮子,但没办法通过配置改变日志的格式或者输出文件.syslog是个系统级别的轮子,不过速度慢,而且功能比较单调. 所以…
zlog源码包下载地址https://github.com/HardySimpson/zlog zlog使用手册http://blog.csdn.net/yangzhenzhen/article/details/8439459…
zlog1使用手册 Contents Chapter 1  zlog是什么? 1.1  兼容性说明 1.2  zlog 1.2 发布说明 Chapter 2  zlog不是什么? Chapter 3  Hello World 3.1  编译和安装zlog 3.2  应用程序调用和链接zlog 3.3  Hello World 代码 3.4  更简单的Hello World Chapter 4  Syslog 模型 4.1  分类(Category).规则(Rule)和格式(Format) 4.2…
库官方网址: 使用手册:    http://hardysimpson.github.io/zlog/UsersGuide-CN.html#htoc11 [formats] simple = "%m%n"    // 打印并加上换行号 [rules] my_cat.DEBUG >stdout; simple zlog 与 syslog 一般紧密结合使用. 例如: [global] default format  =               "%V %v %m%n&q…
[ global] strict init = false buffer min = buffer max = 2MB rotate lock file= /tmp/zlog.lock [formats] normal = "%d.%us [%V][%F:%L] %m%n" [ rules ] asr_level.* "/home/test/asr.log";normal 注意:如果配置了rotate lock file项,在自己本机测试时候,注意删除一下zlog.…
zlog使用手册 来源 http://hardysimpson.github.io/zlog/UsersGuide-CN.html Contents Chapter 1  zlog是什么? 1.1  兼容性说明 1.2  zlog 1.2 发布说明 Chapter 2  zlog不是什么? Chapter 3  Hello World 3.1  编译和安装zlog 3.2  应用程序调用和链接zlog 3.3  Hello World 代码 3.4  更简单的Hello World Chapte…
现看看效果如何: 方法如下: 定义相关颜色的宏 #define ESC_START "\033[" #define ESC_END "\033[0m" #define COLOR_FATAL "31;40;5m" #define COLOR_ALERT "31;40;1m" #define COLOR_CRIT "31;40;1m" #define COLOR_ERROR "35;40;1m&qu…
zlog简述: log是一个高性能.线程安全.灵活.概念清晰的纯C日志函数库. 事实上,在C的世界里面没有特别好的日志函数库(就像JAVA里面的的log4j,或者C++的log4cxx).C程序员都喜欢用自己的轮子.printf就是个挺好的轮子,但没办法通过配置改变日志的格式或者输出文件.syslog是个系统级别的轮子,不过速度慢,而且功能比较单调.log4c异常坑爹(有内存泄漏.效率低等等),而且已经停止开发 zlog有这些特性: *  syslog分类模型,基于规则路由过滤,比log4j模型…
1. zlog 是个很好的写程序日志的库,功能比较强大,上手快. 2. 下载地址:https://github.com/bmanojlovic/zlog 3. cd 到文件夹下,对 autogen.sh 添加可执行权限:chmod +x autogen.sh 然后执行:./autogen.sh 如果出现不能识别的函数错误,或报"Syntax error: "(" unexpected 的错误,请取消dash: dpkg-reconfigure dash 选择  no :然后再…
配置文件*.conf 配置文件具体内容如下: [global] #改变量可以不写,默认是true,如果使用设置为true时,Zlog就会严格检查所用格式和规则,否则,忽略所用格式和规则. strict init = true buffer min = buffer max = #转档指定锁文件,用于保证多进程下日志安全转档,使用默认的配置文件为锁文件. #rotate lock file = zlog.lock #日志访问权限, 只允许当前用户访问 [formats] #使用默认日志输出格式 "…
在C的世界里面没有特别好的日志函数库(就像JAVA里面的的log4j,或者C++的log4cxx).C程序员都喜欢用自己的轮子.printf就是个挺好的轮子,但没办法通过配置改变日志的格式或者输出文件.syslog是个系统级别的轮子,不过速度慢,而且功能比较单调 下载:https://github.com/HardySimpson/zlog/releases 安装 # make # sudo make install or # make PREFIX=./install install 使用 #…
1. zlog简介 zlog的资料网上很多,这里不在详细说明:zlog是用c写的一个日志工具,非常小,而且高效,可以同时向控制台和文件中输出,日志接口与printf使用基本一样,所以使用起来很简单. 感觉唯一的缺点是配置稍微复杂点,不能动态修改输出级别: 2.使用介绍 2.1 zlog编译 zlog的很好编译,如果你是在x86平台上,就不用修改makefile,进入src目录下直接make就可以了: 如果是在交叉编译,移植到嵌入式设备上用,那么只需要修改src/makefile里的cc为交叉编译…
mdc.h #ifndef __zlog_mdc_h #define __zlog_mdc_h #include "zc_defs.h" typedef struct zlog_mdc_s zlog_mdc_t; struct zlog_mdc_s{ zc_hashtable_t *tab; }; zlog_mdc_t *zlog_mdc_new(void); void zlog_mdc_del(zlog_mdc_t *a_mdc); void zlog_mdc_profile(zlo…
level_list.h /** * */ #ifndef __zlog_level_list_h #define __zlog_level_list_h zc_arraylist_t *zlog_level_list_new(void); void zlog_level_list_del(zc_arraylist_t *levels); void zlog_level_list_profile(zc_arraylist_t *levels, int flag); /* notice */ in…
level.h /** * */ #ifndef __zlog_level_h #define __zlog_level_h #include "stdio.h" #include "zc_defs.h" typedef struct zlog_level_s { int int_level; ]; ]; size_t str_len; int syslog_level; } zlog_level_t; zlog_level_t *zlog_level_new(ch…
zc_hashtable.h /** * hashtable */ #ifndef __zc_hashtable_h #define __zc_hashtable_h typedef struct zc_hashtable_entry_s { unsigned int hash_key; void *key; void *value; struct zc_hashtable_entry_s *prev; struct zc_hashtable_entry_s *next; } zc_hashta…
zc_arraylist.h /** * 实现类似列表的功能 * */ #ifndef __zc_arraylist_h #define __zc_arraylist_h #define ARRAY_LIST_DEFAULT_SIZE 32 //删除.比较两个函数类型声明 typedef void (*zc_arraylist_del_fn) (void *data); typedef int (*zc_arraylist_cmp_fn) (void *data1, void *data2);…
zc_profile.h #ifndef __zlog_profile_h #define __zlog_profile_h #define EMPTY() #define zc_assert(expr, rc) \ if(!(expr)){ \ zc_error(#expr"is null or 0"); \ return rc; \ } /** * 枚举类型,列举出所有profile支持的flag */ enum zc_profile_flag{ ZC_DEBUG = , ZC_W…
1.linux 源码调用 2.log 3级 info error debug 3.调用便利性 4.配置文件 动态加载 5.输出 log 文件 (大小 时间) 6大批量写入 (100条一次写入) 7设置时间自动删除 easylogging++…
phpize扩展php模块 phpize 所在目录 /usr/etc/php/bin/phpize 查看当前php配置情况 /usr/etc/php/bin/下面的php [root@localhost bin]cd /usr/etc/php/bin [root@localhost bin]# ./php -i | grep configure Configure Command => './configure' '--prefix=/usr/etc/php' '--with-config-fi…
php网址 http://php.net/downloads.php 首先下载 php-5.6.5.tar.gz [root@localhost src]# wget http://cn2.php.net/distributions/php-5.6.5.tar.gz --2015-01-24 18:51:49-- http://cn2.php.net/distributions/php-5.6.5.tar.gz 正在解析主机 cn2.php.net (cn2.php.net)... 202.10…
最近看到有些论坛在讨论js压缩.混淆和加密的问题,特意找了些资料看了下,现在总结一下: 1.关于三者的定义与区别 压缩:删除 Javascript 代码中所有注释.跳格符号.换行符号及无用的空格,从而压缩 JS 文件大小,优化页面加载速度. 混淆:经过编码将变量和函数原命名改为毫无意义的命名(如function(a,b,c,e,g)等),以防止他人窥视和窃取 Javascript 源代码,也有一定压缩效果. 加密:一般用eval方法加密,效果与混淆相似,也做到了压缩的效果. 从定义中可以看出,压…
JSON.parse('{"site":"zlog"}'); 使用JSON.parse需严格遵守JSON规范, 属性都需用双引号引起来, 一定是双引号!! 相反的, JSON对象转字符串: JSON.stringify(value [, replacer] [, space]) 语法讲解参考: http://www.cnblogs.com/damonlan/archive/2012/03/13/2394787.html IE6,7下不支持, 可以引用json2.js…
问题描述: 最近将IOS书城容器化,切换流量后.正常的业务测试了一般,都没发现问题.线上的错误监控系统也没有报警,以为迁移工作又告一段落了,暗暗的松了一口气.紧接着,报警邮件来了,查看发现是一个苹果支付相关接口调用的curl错误,错误码为"56",错误描述为:“Failure with receiving network data”接收网络数据失败. 机器 : 192.168.1.1当前URL : /xxx/recharge/apple?xxxxxxxxxxxxx接口URL : htt…
一般要做正圆形图片,只能是正方形的基础上才能实现,否则就变成椭圆了,下面说说如何使长方形的图片生成正圆形图片 废话不多说,没图没真相,先上图吧: 原图:  变成正圆后:  下面上代码: public static Bitmap makeRoundCorner(Bitmap bitmap) { int width = bitmap.getWidth(); int height = bitmap.getHeight(); int left = 0, top = 0, right = width, b…
zebra,中文翻译是斑马,于是我打开了宋冬野的<斑马,斑马>作为BGM来完成这个篇章,嘿嘿,小资一把! zebra姑且戏称它是quagga项目的大内总管. 因为它负责管理其他所有协议进程的路由信息的更新与交互,并负责与内核交换信息,如下的架构: +----+ +----+ +-----+ +-----+ |bgpd| |ripd| |ospfd| |zebra| +----+ +----+ +-----+ +-----+ | +---------------------------|--+…
Linux操作系统中当CPU处于内核状态时,可以分为有用户上下文的状态和执行硬件.软件中断两种.其中当处于有用户上下文时,由于内核态和用户态的内 存映射机制不同,不可直接将本地变量传给用户态的内存区:处于硬件.软件中断时,无法直接向用户内存区传递数据,代码执行不可中断.针对传统的进程间通信 机制,他们均无法直接在内核态和用户态之间使用,原因如下表:  通信方法 无法介于内核态与用户态的原因 管道(不包括命名管道) 局限于父子进程间的通信. 消息队列 在硬.软中断中无法无阻塞地接收数据. 信号量…