如何按日期分隔php日志?

时间:2013-12-18 23:02:21

标签: php date logging split

以下是我在每个域上的实际配置vhost conf:

<VirtualHost *:80>
   ...
   php_value error_log /var/log/php-logs/domainName/error.log
   ...
</VirtualHost>

我可以做些什么来保持这条路径(一个目录一个目录),但是按天拆分php日志( 20131218.log 20131219.log 等等。而不是 error.log )?

1 个答案:

答案 0 :(得分:0)

Wrikken(请参阅注释)建议只使用logrotate - 但为了使其正常工作,您需要关闭并重新打开引用日志的每个文件句柄 - 如果您使用的Linux发行版已经为Apache配置了logrotate并且PHP是通过mod_php调用,你不介意服务中断,那么你只需要将这个文件添加到为Apache旋转的日志中。但是如果你想保持你的服务器或你使用php-fpm,这会变得非常混乱。但您没有告诉我们有关Web服务器,操作系统或SAPI版本的信息。

其他解决方案

  • (在Linux / Unix / BSD上)使用系统日志记录守护进程(error_log=syslog)和nd configure来旋转日志

  • 在Apache上,如果未设置error_log是ini,则会将错误发送到stderr,Apahce会将这些错误写入错误日志:您可以将其配置为通过bundled filter which automatically rotates logs