0

我正在处理一个 logrotate 配置文件来旋转 Symfony2 日志。我必须重新启动任何东西吗?对于标准的 Symfony2 应用程序,我看不到任何使日志文件文件描述符保持打开状态的东西。

这是我想出的旋转日志的方法:

/user/app/logs/*.log
{
    missingok
    notifempty
}

如果有一个使用 Symfony2 框架的长时间运行的进程(守护进程),我想在日志轮换期间必须重新启动该进程。

4

1 回答 1

1

PHP 应用程序使用“无共享”方法 - 每个页面加载都从头开始,没有打开的文件描述符或类似文件。即使使用 FastCGI 方法,它可以防止 PHP 引擎为每个请求重新执行,情况仍然如此。

所以不,您不需要重新启动任何东西 - 新请求将输出到新的日志文件,无需额外的努力。

可能不是这种情况的一种情况是使用工作进程(例如,服务队列),但如果您使用它,您已经知道了这一点。

于 2012-07-07T04:08:11.867 回答