Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在Python中将调试消息记录到系统日志中_Python_Macos_Logging_Python 3.x - Fatal编程技术网

无法在Python中将调试消息记录到系统日志中

无法在Python中将调试消息记录到系统日志中,python,macos,logging,python-3.x,Python,Macos,Logging,Python 3.x,我正在MacOSX上使用Python3.4。我有以下代码来设置记录器: LOGGER = logging.getLogger(PROGRAM_NAME) LOGGER.setLevel(logging.DEBUG) LOGGER.propagate = False LOGGER_FH = logging.FileHandler(WORKING_DIR + "/syslog.log", 'a') LOGGER_FH.setLevel(logging.DEBUG) LOGGER_FH.setFor

我正在MacOSX上使用Python3.4。我有以下代码来设置记录器:

LOGGER = logging.getLogger(PROGRAM_NAME)
LOGGER.setLevel(logging.DEBUG)
LOGGER.propagate = False

LOGGER_FH = logging.FileHandler(WORKING_DIR + "/syslog.log", 'a')
LOGGER_FH.setLevel(logging.DEBUG)
LOGGER_FH.setFormatter(logging.Formatter('%(name)s: [%(levelname)s] %(message)s'))
LOGGER.addHandler(LOGGER_FH)

LOGGER_SH = logging.handlers.SysLogHandler(address='/var/run/syslog',
                                       facility=logging.handlers.SysLogHandler.LOG_USER)
LOGGER_SH.setLevel(logging.DEBUG)
LOGGER_SH.setFormatter(logging.Formatter('%(name)s: [%(levelname)s] %(message)s'))
LOGGER.addHandler(LOGGER_SH)

FileHandler
工作得很好,我能够在日志中看到所有日志级别的所有预期消息。
SysLogHandler
无法正常工作。我无法在系统日志输出中看到任何
LOGGER.info()
LOGGER.debug()
消息。我可以看到错误和警告消息,但看不到信息或调试。即使调整
/etc/syslog.conf
文件也没有效果(即使在使用launchctl显式地重新加载syslog守护进程之后)。我在这里遗漏了什么?

试试:address='/dev/log'


文档中有点让人困惑,但“地址”应该是一个unix域套接字,而不是一个文件。

你确定你有该文件的写入权限吗?@inspectorG4dget你指的是哪个文件?我前面提到的FileHandler附加的syslog.log文件工作正常,或者syslog记录了一些消息(但不是全部)的/var/run/syslog套接字?显然,权限不是问题所在。