linux syslogger如何工作?

我正在学习linux编程,并希望做到以下几点.我想创建一个像syslog一样工作的迷你记录器.我希望能够替换系统日志(不是在实践中,而只是为了了解每个级别的工作原理).

所以在我的代码中,我会写

#include "miniLogger.h"

....
....
miniLogger(DEBUG,"sample debug message");

----
----

现在,我猜我需要某种守护进程来监听来自我的miniLogger的传入消息,而且我没有使用守护进程的经验.您能否指出我正确的方向,或者让我快速了解消息如何从我的API转移到可配置的目的地.
我阅读了手册页,但我需要更多地概述API如何与守护进程通信.

最佳答案
syslogd通过/ dev / log侦听日志消息,这是一个unix域套接字.套接字是面向数据报的,这意味着协议类似于udp.

您的日志后台程序应该打开套接字,将套接字设置为服务器模式,以写入模式打开日志文件,要求获得数据包通知,安全地解析消息,并将它们写入文件.在man 7 socket中描述了重要的系统调用socket io.要获得套接字上的传入数据的通知,您可以使用epoll或选择.

相关文章

insmod和modprobe加-f参数导致Invalid module format错误 这...
将ArchLinux安装到U盘 几个月前入门Arch的时候上网搜了不少安...
1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...