文件中的Syslog不起作用,解释器也可以

时间:2015-03-06 18:00:47

标签: python syslog

我在Mac OSX Yosemite机器上尝试以下代码,运行python3.4

import syslog
syslog.syslog("This is a test")

如果我通过独立启动它直接将它运行到解释器中,请注意,我的/var/log/system.log中有一行

但是,如果我创建一个名为junk的新文件并在其中输入python3 junk,则表示没有错误,系统日志中没有任何内容。

我到处寻找解决方案。我以root身份运行,因此肯定不是权限问题(或者至少绝对不是可解决的问题)。

我根本不知道在哪里寻找一些反馈。我甚至尝试设置它,以便它也打印到​​stderr,它显示在stderr但不在日志文件中。我尝试设置它,以便如果它无法访问日志,它将使用stderr,但没有任何显示,所以很明显python 认为它与日志的对话。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我不知道为什么它直接用Python在MacOSX上工作(它不适合我)。但是,在添加优先级之后,它在Python解释器和单独的程序中对我有用。例如:

import syslog
syslog.syslog(syslog.LOG_ERR, 'bla')

可能是syslog()使用的默认优先级,它在MacOSX中被过滤掉,因此它不会进入系统日志。