Почему apache2 не регистрируется должным образом, учитывая следующий logrotate.conf
access_log кажется постоянно размером 0. Но error_log записывается нормально.
Удивительно, но access_log.[1-5].gz созданы, но только access_log.3.gz и access_log.4.gz содержат непустые журналы.
Итак, вот logrotate.conf, который также находится в каталоге logfiles:
# create new (empty) log files after rotating old ones
create
# compress old logs with gzip
compress
/home/default/example.com/user/logfiles/access_log {
missingok
rotate 5
daily
postrotate
/usr/bin/killall -HUP syslogd
endscript
}
/home/default/example.com/user/logfiles/error_log {
missingok
rotate 5
size=5M
postrotate
/bin/kill -USR1 `cat /var/run/httpd.pid`
endscript
}
/home/default/example.com/user/logfiles/agent_log {
missingok
rotate 5
size=5M
postrotate
/bin/kill -USR1 `cat /var/run/httpd.pid`
endscript
}
/home/default/example.com/user/logfiles/referer_log {
missingok
rotate 5
size=5M
postrotate
/bin/kill -USR1 `cat /var/run/httpd.pid`
endscript
}
Там нет никаких файлов agent_log, referer_log. Так что-то явно не так с этим logrotate.conf? Если нет, то как мне узнать, используется ли этот файл или проблема? Я могу опубликовать больше информации, если это необходимо.
Сервер Ubuntu 8.10, кстати.
Обновление: htttd.pid даже не существует.
ubuntu:~# cat /var/run/httpd.pid
cat: /var/run/httpd.pid: No such file or directory
2 ответа
Ваш postrotate настроен на перезапуск syslogd. Я считаю, что вам нужно сделать это с httpd.
Вы проверили свои настройки Apache? Logrotate просто вращает файлы журнала, но не пишет в них. Поэтому, если в ваших файлах журналов отсутствует контент, вам следует начать с просмотра настроек Apache.