以下代码将消息发送到文件/ var / log / syslog。 我有一个远程服务器正在侦听端口514(rsyslog)。 有没有办法更改此代码,以便它将消息发送到远程服务器?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <syslog.h>
int main(int argc, char *argv[])
{
openlog ("Engine", LOG_CONS | LOG_PID | LOG_NDELAY, LOG_LOCAL1);
syslog(LOG_NOTICE,"***Example***");
}
答案 0 :(得分:0)
据我所知,使用openlog和syslog描述将登录到syslog.conf中配置的服务器,因此您无法按照自己的方式指定服务器。你可以在syslog.conf中设置远程服务器,这应该可行。
如果您不希望这样做,您需要使用支持syslog的库作为接收器,或者您需要实现自己的 - 这不是很难。