这是一个虚拟主机我的网站示例:
<VirtualHost *:80>
DocumentRoot /datas/web/woog
ServerName woog.com
ServerAlias www.woog.com
ErrorLog "|/httpd-2.2.8/bin/rotatelogs /logs/woog/error_log 86400"
CustomLog "|/httpd-2.2.8/bin/rotatelogs /logs/woog/access_log 86400" combined
DirectoryIndex index.php index.htm
<Location />
Allow from All
</Location>
<Directory /*>
Options FollowSymLinks
AllowOverride Limit AuthConfig
</Directory>
</VirtualHost>
我目前有 12 个网站在运行。结果如下:
[Shake]:/sources/software/mod_log_rotate# ps x | grep rotate
/httpd-2.2.8/bin/rotatelogs /logs/[hidden siteweb]/error_log 86400
/httpd-2.2.8/bin/rotatelogs /logs/[hidden siteweb]/error_log 86400
[snap (as many error_log as virtual hosts)]
/httpd-2.2.8/bin/rotatelogs /logs/[hidden siteweb]/access_log 86400
/httpd-2.2.8/bin/rotatelogs /logs/[hidden siteweb]/access_log 86400
[snap (as many access_log as virtual hosts)]
grep rotate
[Shake]:/sources/software/mod_log_rotate#
!!!
我到处找了,但只找到了 mod_log_rotate。“小”问题是作者(非常优秀的 C 开发人员)解释说:“不幸的是,Apache 错误日志的处理方式使得我们无法对它们使用相同的日志轮换魔法。与传输日志一样,它们支持管道日志记录,因此您仍然可以对它们使用 rotatelogs。”
所以我的问题是:处理多个日志的最佳方法是什么?如果我只做一个非常经典的日志,并使用系统的“logrotate”程序,这不是很好吗?你会如何处理这个问题?
谢谢你!
答案1
好吧,如果没问题的话,我会继续使用当前设置。我看不出有 24 个额外进程会有什么问题(除非你使用的是 486)。
当设置新系统时,我会使用 logrotate。只是因为我了解这个工具。