PDA

Просмотр полной версии : Автоперезапуск Spamd


Сергей
22.11.2006, 13:35
Как можно организовать автоматический перезапуск spamassassin, если он перестает фильтровать почту по каким либо причинам?
в частности вчера вечером сбойнул, сегодня утром свалилась куча спама. В логах такая причина:
mail spamd[11808]: prefork: syswrite(8) failed, retrying ... at /usr/lib/perl5/site_perl/5.8.5/Mail/Spamassassin/SpamdForkScaling.pm line 554

потом пытался, пытался и через 300 секунд выдал
mail spamd[385]: prefork: sysread(9) failed after 300 sec ... at /usr/lib/perl5/site_perl/5.8.5/Mail/Spamassassin/SpamdForkScaling.pm line 501

и после потерялся коннект со spamd
connect(AF_INET) to spamd at 127.0.0.1 failed, retrying (#1 of 3): Connection timed out

Это происходит от одного до трех раз в месяц. Можно ли написать скриптик, который бы проверял бы раз в 15-30 мин spamd на возникновение такой ошибки и если она есть, то рестартовал бы её?

Артур Крюков
22.11.2006, 13:50
Скриптик можно написать. Пусть ищет в логах такие сообщения и перестартует spamd. Но лучше выяснить причину почему асасин валится. К сожалению я не спец в Перле, что написано в соответствующих строках сказать не смогу.

И вообще - я использую dspam :)

Сергей
22.11.2006, 14:36
на мой взгляд - когда слишком много запросов, сервер не успевает обрабатывать их и глохнет. я тоже не спец в перле, но посмотрев на тот кусок кода создается мнение, что когда появляется новый запрос, а ему и выделить нечего скрипт ждет 5 сек и пытается снова и так 300 сек. и во время этих попыток "забывается всё на свете" - пакеты не обрабатываются, место для новых не освобождается - просто сидим и бьемся головой об стенку. попробую написать скрипт для перезагрузки

Сергей
22.11.2006, 14:40
Кстати, спасибо за хорошее обучение на курсах! Благодаря этому устроился на нормальную работу. Не все знания требуются из полученных, но sendmail (и несколько exim, правда мы их не проходили), Apache и особенно shell-script понадобились

Артур Крюков
22.11.2006, 17:26
на мой взгляд - когда слишком много запросов, сервер не успевает обрабатывать их и глохнет. я тоже не спец в перле, но посмотрев на тот кусок кода создается мнение, что когда появляется новый запрос, а ему и выделить нечего скрипт ждет 5 сек и пытается снова и так 300 сек. и во время этих попыток "забывается всё на свете" - пакеты не обрабатываются, место для новых не освобождается - просто сидим и бьемся головой об стенку. попробую написать скрипт для перезагрузки

тогда можно попробовать ограничить количество запросов от почтового сервера.