uWSGI与--master导致非法查找错误

时间:2015-04-16 23:40:18

标签: uwsgi master

最后将它缩小到--master标志。如果我启用了主进程,那么在启动uwsgi之后我会得到大量的这些,大约每秒1次:

uwsgi_check_logrotate()/ lseek():非法搜索[core / logging.c第497行]

我一直在倾注uwsgi文档,但找不到任何关于如何正确设置主服务器或正常运行所需的内容。

任何帮助都会受到赞赏,因为我已经读过主过程对于生产环境非常重要。

修改

我不确定为什么打开--master流程会导致这种情况发生,但我最终偶然发现了可能的原因:

  

uWSGI中最基本的日志记录形式是将请求,错误和>信息性消息写入stdout / stderr。这在默认的>配置中发生。最基本的日志重定向形式是--logto / --logto2 /> - daemonize选项,允许您将日志重定向到文件。

我已经声明了logto = path / to / logfile,并且没有意识到默认行为是将日志发送到stdout。所以我从我的日志文件中创建了一个到std的系统链接。

然而,当--master进程未开启时,这似乎不是问题。

2 个答案:

答案 0 :(得分:1)

我通过将日志记录委托给主进程来解决此问题:

  

-log-master

来自https://github.com/unbit/uwsgi/blob/d960f8fdc36b33c60b7291ca8e32dbb5df22cf15/core/uwsgi.c#L794

  

{“ log-master”,no_argument,0,“将日志委托给主进程”,   uwsgi_opt_true,&uwsgi.log_master,   UWSGI_OPT_MASTER | UWSGI_OPT_LOG_MASTER},

答案 1 :(得分:0)

无法真正解决它,所以我的解决方案是简单地删除我的系统链接以及来自我的uwsgi.ini的logto命令,因为默认行为是将日志发送到stdout和stderr。能够将日志发送到stdout / stderr以及文件会很好,但现在这样做。