全部博文(478)
分类: Android平台
2015-07-21 15:02:45
由于内核log_buf的大小受限,而内核随着时间的运行,其日志信息会越来越多,当过多时,log_buf中的日志信息就会被循环覆盖。
为了解决这个问题, 在用户空间就开发了klogd守护进程。它通过klogctl()将log_buf中的日志信息读取出来,然后发给syslogd()。
syslogd的接口
(1) 命令接口, logger
logger [-isd] [-f file] [-p pri] [-t tag] [-usocket] [message ...]
上面是logger使用方法,具体的参数含义可以man 1 logger
(2) API接口,openlog()/syslog()/closelog()
openlog()建立syslogd的连接;
void openlog(const char *ident, int option,int facility)
syslog()向syslogd发送log信息
void syslog(int priority, const char*format, ...);
closelog()断开与syslogd的连接
void closelog(void);
至此,Linux系统中的日志机制就介绍完毕了。
版权声明:本文为博主原创文章,未经博主允许不得转载。