最后将它缩小到--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进程未开启时,这似乎不是问题。
答案 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以及文件会很好,但现在这样做。