什么是syslog()工具,如果没有netnet使用openlog()

时间:2013-05-14 11:01:55

标签: c unix freebsd syslog

我正在尝试使用syslog()并阅读手册页告诉我在openlog()中,如果在{{1}的后续调用中未指定任何参数,则facility参数会建立默认值}}“

根据我的理解,这样做的方法是:1。调用syslog()设置设施2.调用openlog进行记录。 3.拨打syslog()

但是如果我在调用syslog()之前没有调用openlog()怎么办?那么设施是什么? “如果没有指定则建立默认使用”的含义。在哪里可以指定,如果不是closelog()

1 个答案:

答案 0 :(得分:1)

Aah我想我明白了。我认为这意味着

syslog(int priority,const char * message,...);

这里的优先级可以是多个标志,如freebsd手册页中的例子所示:

syslog(LOG_INFO | LOG_LOCAL2,“foobar错误:%m”);

此处设施为LOG_LOCAL2,优先级为LOG_INFO。因此,如果在如上所述的syslog()调用中没有提供,openlog()中提到的工具将生效。