Страница 1 из 1

Exilog - ошибка.

Добавлено: 2011-01-21 15:05:09
Damir
Добрый день, товарищи!
Есть сервачек:

Код: Выделить всё

FreeBSD mx2.textiles.ru 8.1-RELEASE FreeBSD 8.1-RELEASE #1: Sun Nov 7 15:53:07 UTC 2010 root@mx2.textiles.ru:/usr/obj/usr/src/sys/GENERIC i386
Поставил exilog, все в порядке. Однако, в логе exilog'а постоянно сыпится такое сообщение:

Код: Выделить всё

(98195) [exilog_agent:_queue_manager] (/var/spool/exim) Fri Jan 21 13:22:28 2011 Opening filehandle THIS also as a directory at /usr/local/sbin/exilog_agent.pl line 369, <THIS> line 1290.
Exim пишет логи по дням:

Код: Выделить всё

log_file_path = /var/log/exim/exim_%s_%D.log
Для этого с exilog'ом провел манипуляции согласно статейке: http://forum.lissyara.su/viewtopic.php? ... 8&start=25

369-я линия в /usr/local/sbin/exilog_agent.pl :

Код: Выделить всё

return unless (opendir(THIS,$base."/".$subdir));
Подскажите, куда копать.
Гугл ничего не ответил.
Заранее благодарен.

Re: Exilog - ошибка.

Добавлено: 2011-01-21 15:53:07
daggerok
надо проверить переменные $base и $subdir
возможно где-то нужно прописать полный, либо другой путь.

Re: Exilog - ошибка.

Добавлено: 2011-01-21 16:37:15
Damir
daggerok писал(а):надо проверить переменные $base и $subdir
возможно где-то нужно прописать полный, либо другой путь.
sub _find_headers {
my $base = shift;
my $subdir = shift;
my $list = shift;

вот что в конфиге относительно переменных.

Re: Exilog - ошибка.

Добавлено: 2011-01-21 17:01:20
daggerok
а скрипты где лежат?
в /usr/local/www/exilog ?
может проблемы с правами?
еще попробуй лог экзима по умолчанию:

Код: Выделить всё

log_file_path = /var/log/exim/exim_%s.log

Re: Exilog - ошибка.

Добавлено: 2011-01-21 17:18:18
Damir
daggerok писал(а):а скрипты где лежат?
в /usr/local/www/exilog ?
может проблемы с правами?
еще попробуй лог экзима по умолчанию:

Код: Выделить всё

log_file_path = /var/log/exim/exim_%s.log
Лог эксима по умолчанию пробовал, ситуация та же.
Скрипты лежат в /usr/local/www/exilog/
права на нее: www:www 40755.
Если меня на другие - веб-морда эксилога работать не будет.

Re: Exilog - ошибка.

Добавлено: 2011-01-24 11:28:40
Damir
Если кому интересно, я отписался за бугор менеджеру этого проекта ( exilog ). Вот ответ:
Hello Damir,

I have the same messages in my log, but they are not harmful.

I guess the original author forget to add a check before he tries to open something that should be a direczory in the opendir() call at line 363.

Best Regards,
Andreas

Re: Exilog - ошибка.

Добавлено: 2011-08-28 0:32:47
valor.ua
ситуация та же.. рогатая софтина однако

Re: Exilog - ошибка.

Добавлено: 2011-08-28 0:36:27
valor.ua
у меня - FreeBSD 8.2, exim 4-74
exilog ставился с портов
попытка запуска exilog_agent-a заканчивается точно также как у Damir-а, с теми же симптомами

Re: Exilog - ошибка.

Добавлено: 2012-10-11 18:28:47
werder31
CHMOD 644 /usr/local/etc/exilog.conf

Поможет))

Re: Exilog - ошибка.

Добавлено: 2012-11-07 13:38:21
AssA
Блин , а я пропарился с тем что не указал /var/spool/exim/incomming - после этого заработаоло.

Re: Exilog - ошибка.

Добавлено: 2014-03-05 6:56:21
QAlex
Доброго дня!

Обновляю порядком забытую тему.
Freebsd 9.1 RELEASE
Exim 4.82
Exilog 0.5_6

Ошибка с выдачей в лог Exilog строк вида:

Код: Выделить всё

(40571) [exilog_agent:_queue_manager] (/var/spool/exim) Tue Mar  4 16:37:00 2014 Opening filehandle THIS also as a directory at /usr/local/sbin/exilog_agent.pl line 367, <THIS> line 50.
(40571) [exilog_agent:_queue_manager] (/var/spool/exim) Tue Mar  4 16:37:00 2014 Opening filehandle THIS also as a directory at /usr/local/sbin/exilog_agent.pl line 367, <THIS> line 50.
(40571) [exilog_agent:_queue_manager] (/var/spool/exim) Tue Mar  4 16:37:00 2014 Opening filehandle THIS also as a directory at /usr/local/sbin/exilog_agent.pl line 367, <THIS> line 50.
(40571) [exilog_agent:_queue_manager] (/var/spool/exim) Tue Mar  4 16:37:00 2014 Opening filehandle THIS also as a directory at /usr/local/sbin/exilog_agent.pl line 367, <THIS> line 50.
побеждена, наконец, сегодня.
Не найдя ни одного рабочего решения этой проблемы ни в Яндексе, ни в Гугле, пришлось брать вилы (дебаг) в руки и выяснять что не нравится в данной строке скрипту-демону /usr/local/sbin/exilog_agent.pl

Сама строка:

Код: Выделить всё

return unless (opendir(THIS,$base."/".$subdir));
А не нравится ей то, что в директории /var/spool/exim/ нет поддиректории Finput, которая там будет только при наличии опции SUPPORT_MOVE_FROZEN_MESSAGES=yes при сборке Exim.

Так что резюме - или создавайте эту директорию (сам не проверял), или удалите/заккоментируйте строку в скрипте:
у меня она 319-ая

Код: Выделить всё

_find_headers($queue,"Finput",$list);
чтобы скрипт не пытался открыть несуществующую директорию спула exim.

Принимаю благодарности :-D

Re: Exilog - ошибка.

Добавлено: 2014-08-04 11:14:10
Damir
Спасибо, друг :) Попробуем.

Exilog - ошибка.

Добавлено: 2015-11-17 19:40:46
aledin
На одном из двух почти идентичных серверов поймал подобную проблему при настройке. Голову сломал что же может быть, на одном работает, на другом ни в какую. Оказалось что забыл поставить Net::Netmask module, поставил из cpan и всё заработало.