我在OSX上运行小牛10.9.2。我想把我的Revel应用程序登录到syslog。我的代码在这一行上失败了:
sysLog, err := syslog.New(syslog.LOG_NOTICE|syslog.LOG_LOCAL0, "myApp")有了这个错误:
Unix syslog delivery errorSyslog肯定在我的机器上运行。有什么问题吗?
发布于 2014-08-04 04:28:11
验证syslog正在运行,否则启用它。
$ ps -aux | grep syslog
root 11703 0.0 0.4 14424 1992 - IsJ 9:17AM 0:00.01 /usr/sbin/syslogd -ss现在,验证syslog是否在预期的本地地址中运行。log/syslog包在/var/run/syslog或/dev/log中查找syslog。如果在那里找不到它,您将看到按照unix.go的"Unix传递错误“。
要查找syslog的本地地址,请使用sockstat命令。
$sockstat
USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS
root login 12104 3 dgram -> /var/run/logpriv
root login 11791 3 dgram -> /var/run/logpriv
root cron 11754 4 dgram -> /var/run/logpriv
root syslogd 11703 4 dgram /var/run/log
root syslogd 11703 5 dgram /var/run/logpriv在上述情况下,syslog在/var/run/log处运行。因此,我创建了一个从/var/run/log到/var/log/syslog的符号链接,错误就消失了。
$ln -sf /var/run/log /var/run/sysloghttps://stackoverflow.com/questions/25050665
复制相似问题