使用C语言生成IETF-syslog消息的标准方法是什么?
标题< syslog.h>。但它没有提供使用STRUCTURED-DATA机制(rfc-5424)的选项。
当然,消息可以直接手工构建到套接字。但似乎这种方式并不标准。
还有另一种标准方式吗?
答案 0 :(得分:1)
嗯... that rfc不到2年。我不认为看到那些因为怀疑的嫌疑人尚未实施它而感到非常惊讶。
答案 1 :(得分:1)
执行此操作的标准方法是使用openlog()
中的常规syslog()
,closelog()
和<syslog.h>
例程让您的应用程序记录消息。
这会将消息发送到本地计算机上运行的syslogd
。如果然后使用syslog协议通过网络转发消息,syslogd
本身将处理此问题。例如,可以使用@hostname
文件中的syslogd.conf
等目标来完成此操作。
简而言之,您的应用程序需要将消息记录到syslogd
,syslogd
决定将它们发送到何处(包括通过网络)。这允许本地管理员进行最大程度的控制。