Python 3- syslog.syslog有效,但logging.handlers.sysloghandler没有记录任何内容

时间:2016-11-04 20:15:29

标签: python python-3.x logging syslog

我有许多使用logging.error(msg)样式记录消息的脚本。

我原来是由FileHandler处理的,但现在我需要将其更改为SysLogHandler。我无法让SysLogHandler工作,我的意思是没有例外,但日志中没有任何结果。

另一方面,我可以使用以下代码通过syslog.syslog记录消息:

import syslog
syslog.openlog(ident="LOG_IDENTIFIER",logoption=syslog.LOG_PID, facility=syslog.LOG_LOCAL3)
syslog.syslog('syslog test msg local3')

这就是我用于sysloghandler

的内容
import logging
import logging.handlers
logger = logging.getLogger('myLogger')
handler = logging.handlers.SysLogHandler(address='/dev/log',facility=19)
logger.addHandler(handler)
logging.error('sysloghandler test msg local3')

facility=19因为这是SysLogHandler.LOG_LOCAL的价值。

我认为问题是address设置。日志文件位于/var/log,但似乎不起作用。我已经尝试不指定地址(因此它默认为localhost端口514)仍然没有记录任何内容。

如果不是问题,我需要知道如何确定正确的地址信息或如何解决问题。

0 个答案:

没有答案