syslog存储错误消息的位置

时间:2012-08-18 06:13:38

标签: c linux syslog

  

syslog()生成日志消息

     

syslog(LOG_ERR,“%s失败:%d(%m)”,str,errno);系统日志(LOG_NOTICE,   “%s失败:%d(%m)”,str,errno);系统日志(LOG_INFO, “%s” 时,STR);

它存储此信息的位置?

我在服务器中找不到任何名称为LOG_ERR,LOG_NOTICE,LOG_INFO的文件。

请建议。

2 个答案:

答案 0 :(得分:2)

Linux 下,您可以在此处找到它们:/var/log/syslog,如果您运行此简单程序:

#include <syslog.h>

int main(int argc, char **argv)
{
        /* Various syslog messages */
        syslog (LOG_CRIT, "%s", "That's critic");
        syslog(LOG_ALERT, "An alert\n");
        syslog(LOG_ERR, "Error on this DAEMON\n");

        return 0;
}

然后打开一个终端并运行它:

toc@UnixServer:/var/log$ tail -f syslog

你应该看到这样的事情:

Aug 18 08:42:21 TarekServer SYSLOG: That's critic
Aug 18 08:42:21 TarekServer SYSLOG: An alert
Aug 18 08:42:21 TarekServer SYSLOG: Error on this DAEMON

答案 1 :(得分:1)

它们被转储到syslog缓冲区中,syslogd / rsyslogd选择它们并将它们放在适当的位置,由/etc中的配置确定。