Вопрос по ротации логов апача

12
[Удален]
1951

Есть 2 сервера - вдска(центос) и дедик(дебиан).

1) на ВДСке папка /var/www/httpd-logs/*****.log в буквальном смысле засирается логами - за месяц 5-6Гиг набегает.

2) на дедике - та же папка, но почему-то логи там хранятся только за текущие сутки (т.е., размер файлов - мизерный).

Господа, подскажите как организовать ротацию этих логов? (рылся в /etc/logrotate.d/ - но чегото невкурил).

Himiko
На сайте с 28.08.2008
Offline
560
#1

Панельки нет на сервере? Может быстрее можно "вкурить" с её помощью :)

Профессиональное администрирование серверов (https://systemintegra.ru). Круглосуточно. Отзывы (/ru/forum/834230) Лицензии (http://clck.ru/Qhf5) ISPManager,VDSManager,Billmanager e.t.c. по низким ценам.
[Удален]
#2

Himiko, панелька ИСП есть, но в ней настройки ротации юзерских логов только /var/www/юзернейм/data/logs/-с ними всё в порядке.

А нужно ротировать /var/www/httpd-logs/ :(

M
На сайте с 01.12.2009
Offline
235
#3

Может подойдёт, такой скрипт для очистки логов.

Устанавливаете в cron и всё гуд.

#!/usr/bin/perl -w
use strict;
my($filesizelimit)=1; # Размер желаемый

my(@logfiles)=`find /var/www/httpd-logs/`; # путь до логов
foreach(@logfiles)
{
chomp($_);
my($size) = -s $_;
my($sizeinMB)=($size/1024)/1024;
if ($sizeinMB>$filesizelimit)
{
print "file: $_ \t \t $size ($sizeinMB MB) \t \t limit $filesizelimit MB\n";
my($cmd)="cat /dev/null > $_";
my($exec)=`$cmd`;
}
}
Администратор Linux,Freebsd. построения крупных проектов.
Himiko
На сайте с 28.08.2008
Offline
560
#4
alesty:
Himiko, панелька ИСП есть, но в ней настройки ротации юзерских логов только /var/www/юзернейм/data/logs/-с ними всё в порядке.

А нужно ротировать /var/www/httpd-logs/ :(

Проблема в том, что там симлинки на /var/www/httpd-logs

Если их удалить, то вы ротацию отломаете.

Зайдите под юзером в раздел "журнал" и симлинки восстановятся.

madoff, лучше делать рационально. Панелька сама умеет настраивать ротацию.

M
На сайте с 16.09.2009
Offline
278
#5
alesty:
Господа, подскажите как организовать ротацию этих логов? (рылся в /etc/logrotate.d/ - но чегото невкурил).

Да чего-ж там вкуривать-то. Просто прочитать документацию не пробовали?

man logrotate

Находим файл, согласно которому у Вас там логи ротируются:

grep httpd-logs /etc/logrotate.d/*

Правим его, проставляя нужный период ротации (daily,weekly...), число ротаций (rotate X) - ну и опционально директивы для архивации логов и т.п. Директория полна примеров с файлами для конфигурации logrotate для других сервисов.

madoff:
Может подойдёт, такой скрипт для очистки логов.

Хватит уже велосипедов с квадратными колесами - есть logrotate.

Абонементное сопровождение серверов (Debian) Отправить личное сообщение (), написать письмо ().
Himiko
На сайте с 28.08.2008
Offline
560
#6

myhand, это всё ISP умеет настраивать. Проще панелькой сделать.

Ну если хочется, то можно и разобраться.

M
На сайте с 01.12.2009
Offline
235
#7
Himiko - madoff, лучше делать рационально. Панелька сама умеет настраивать ротацию.

Скажите пожалуйста, где именно средствами панели ротуруются логи в папке /var/www/httpd-logs ? :)

madoff добавил 31.05.2010 в 19:29

myhand:

Хватит уже велосипедов с квадратными колесами - есть logrotate.

Нормальные колёса :)

madoff добавил 31.05.2010 в 19:30

[Удален]
#8

madoff, действительно - по крону убивать это не наш метод :) - мало ли, понадобятся.

myhand, будем читать.

Himiko, спасибо.

litos0
На сайте с 17.07.2008
Offline
122
#9

Как бы в доке написано http://ru.ispdoc.com/index.php/Как_работает_ротация_логов

Там путь правда для FreeBSD (/home/httpd-logs), у вас же в /var/www/httpd-logs (так как Linux), остальное все то же самое.

Himiko
На сайте с 28.08.2008
Offline
560
#10
madoff:
Скажите пожалуйста, где именно средствами панели ротуруются логи в папке /var/www/httpd-logs ? :)

Я уже писал об этом.

Логи хранятся в /var/www/httpd-logs/

А то, что в /var/www/user... - это всего лишь хардлинки. Вот по ним и ротирует. Если их удалить, то и ротация отломается.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий