当我在我的 Mac 上运行这个程序时:
import logging.handlers
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
syslog_address = '/var/run/syslog'
logger.addHandler(logging.handlers.SysLogHandler(syslog_address))
logger.error("What the crap?")
它在系统日志中显示为这样:Oct 18 19:02:06 nick Unknown[4294967295] <Error>: What the crap?
为什么是未知的?它不应该聪明到以脚本名称命名自己吗?
handler.ident
设置为字符串,它将自动添加到所有消息的前面。 - Hubrohandler.ident
赋值为"app_name"
是不够的,因为它只会按原样加在前面,导致日志行变成类似"app_nameThis is a test"
的形式。你必须手动包含": "
。 - Hubro