Skip to main content
 首页 » 编程设计

python之syslog 正在工作,但 SysLogHandler 不工作

2025年05月04日752php

我无法让 SysLogHandler 工作,这让我抓狂。

这是我的代码:

   import logging 
   import logging.handlers 
 
   logger = logging.getLogger() 
   sh = logging.handlers.SysLogHandler(address='/dev/log/', facility='local1') 
   logger.addHandler(sh) 
 
   logger.setLevel(logging.INFO) 
   logger.info('Test') 

而且不起作用。我已将 local1 设置为在我的 syslog.conf 中的 /var/log/test.log 中输出,但没有出现任何内容,但是如果我使用 syslog,它会按预期工作:

   import syslog 
 
   syslog.syslog(syslog.LOG_LOCAL1, 'Test from syslog') 

我在 Debian 6 上,在一个通过 uwsgi 服务的应用程序中。

你能帮帮我吗?

请您参考如下方法:

UNIX 套接字名称(地址参数)应该以文件名结尾,而不是“/”。所以它通常应该是 address='/dev/log' 在 linux 上。