ILD

syslog
作者:Yuan Jianpeng 邮箱:yuanjp89@163.com
发布时间:2019-10-8 站点:Inside Linux Development

syslog提供一个机制,给各个应用程序记录日志。glibc提供了接口来发送log给syslog的守护进程,这个守护进程通常是syslogd。


c库提供的接口:

1
2
3
4
5
       void openlog(const char *ident, int option, int facility);
       void syslog(int priority, const char *format, ...);
       void closelog(void);
 
       void vsyslog(int priority, const char *format, va_list ap);


syslogd和c库通过/dev/log通信,这是一个Unix域套接字。syslogd监听这个套接字,收集所有的syslog。

1
2
# ls /dev/log -l
srw-rw-rw-    1 root     root             0 Oct  3 01:32 /dev/log


在openwrt系统里面,ubox提供了logd守护进程,收集syslog和kernel log。ubox还提供logread程序,读取所有logd收集的syslog和kernel log。


busybox提供logger程序,实现在命令行记录syslog。


参考:

glibc manual: https://www.gnu.org/software/libc/manual/html_node/Syslog.html


Copyright © linuxdev.cc 2017-2024. Some Rights Reserved.