TypeError: openlog() takes no keyword arguments

TypeError: openlog() takes no keyword arguments

我正在尝试在我的一个脚本中写入系统日志。这是 logger.py 的代码:

from __future__ import print_function
import os
import sys
import syslog
import urllib
import datetime

def log(msg, level="info"):
    msg = safe(msg)
    if os.environ.get('debug'):
        debugmsg = "{0} {1}".format(datetime.datetime.now(), msg)
        print(debugmsg, file=sys.stderr)
    syslog.openlog(ident=__file__,logoption=syslog.LOG_PID,facility=syslog.LOG_LOCAL0)
    syslog.syslog(level, msg)

def safe(str):
    return urllib.unquote_plus(str)

当我通过logger.log("Hello world!")测试日志功能时,解释器抛出TypeError: openlog() takes no keyword arguments

有什么见解吗?

这可能是旧版本 python 的问题。参见 this and that