【问题标题】:What is the syslog() facility if none is net using openlog()如果没有使用 openlog() 的网络,那么 syslog() 工具是什么
【发布时间】:2013-05-14 11:01:55
【问题描述】:

我正在尝试使用 syslog() 并阅读手册页告诉我,在 openlog() 中,“如果在随后对 syslog() 的调用中未指定任何内容,则该设施参数建立了一个默认值”

所以据我了解,这样做的方法是:1.致电openlog设置设施2.致电syslog()进行登录。 3. 拨打closelog()

但是如果我在调用 syslog() 之前不调用 openlog() 会怎样?那设施是什么? “如果未指定,则建立要使用的默认值”是什么意思。如果不是openlog(),在哪里可以指定?

【问题讨论】:

    标签: c unix freebsd syslog


    【解决方案1】:

    啊,我想我明白了。我认为这意味着对于

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

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

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

    这里的设备是 LOG_LOCAL2,优先级是 LOG_INFO。因此,如果在上述对 syslog() 的调用中没有提供任何内容,则 openlog() 中提到的功能将生效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-01
      • 2012-02-25
      • 1970-01-01
      • 2021-11-29
      • 2010-09-20
      • 1970-01-01
      • 1970-01-01
      • 2022-12-20
      相关资源
      最近更新 更多