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

Добавлено: 2006-08-20 11:47:48
Alex Keda
и вообще я не понял - заработало или нет?

Добавлено: 2006-08-20 12:13:48
robi
lissyara писал(а):

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

auth_login:
  driver = plaintext
а это тогда откуда?
это я когда вставлял кусок кода, оставил для привязки сверху accept и снизу хотел оставить первую незакоментированную строку - но папарился и всесте с закоментироваными грохнул begin routers

Добавлено: 2006-08-20 12:30:13
robi
lissyara писал(а):и вообще я не понял - заработало или нет?
в базу пишет если
код такой

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

 
accept
set acl_m6 = ${lookup mysql{INSERT INTO `maillog` SET \
                datetime='${tod_log}', \
                mailid='${message_id}', \
                mfrom='${sender_address}', \
                mto=REPLACE('${recipients}',', ','\n'), size=${message_size}, \
                subject='$h_subject:', \
                host='$qualify_domain'}}
begin routers
если вставляю условия для проверки - нужно ли писать в БД стаистику для этого домена
к приреру так

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

accept 

if $domain is "${lookup mysql{SELECT `domain` FROM `domain` WHERE `domain`='$domain' AND `log`='1'}}" 
then 
set acl_m6 = ${lookup mysql{INSERT INTO `maillog` SET \ 
                datetime='${tod_log}', \ 
                mailid='${message_id}', \ 
                mfrom='${sender_address}', \ 
                mto=REPLACE('${recipients}',', ','\n'), size=${message_size}, \ 
                subject='$h_subject:', \ 
                host='$domain'}} 
endif 

begin routers
то ни хрена - данном случае exim ругаеться при запуске на then

как ты еще советовал warn logwrite = logging into DB
тоже ни хрена, при запуске не ругаеться но и не пишет ни чего
попробую еще раз описать как я это представляю :)
я не могу въехать как описать условия присвоения переменной acl_m6 значения
в зависимости к примеру от другой переменной
те делаем set acl_m5 = ${if eq {lookup mysql{SELECT `domain` FROM `domain` WHERE `domain`='$domain' AND `log`='1'}} {$domain} {yes}{no} }
те проверяем есть ли домен порлучателя в списке доменов для которого нужно писать статистику, если yes
то тогда set acl_m6 = insert и тд
если no
то ни хрена не делаем

Добавлено: 2006-08-20 14:06:54
Alex Keda
lissyara писал(а):сам не пробовал, но мона примерно так:

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

warn  logwrite = logging into DB
         domains = {lookup mysql \ 
                         {SELECT `domain` FROM `domain` WHERE  \ 
                         `domain`=`${qualify_domain}` AND`log`= `1`} 
        set acl_m6 =  ${lookup mysql{INSERT INTO `stat` SET \ 
                             XFrom='${sender_address}', \ 
                             XTo=REPLACE('${recipients}',', ','\n'), Size=${message_size}, \ 
                             Subj='$h_subject:'}}
а так:

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

accept
         domains = {lookup mysql \ 
                         {SELECT `domain` FROM `domain` WHERE  \ 
                         `domain`=`${qualify_domain}` AND`log`= `1`} 
        set acl_m6 =  ${lookup mysql{INSERT INTO `stat` SET \ 
                             XFrom='${sender_address}', \ 
                             XTo=REPLACE('${recipients}',', ','\n'), Size=${message_size}, \ 
                             Subj='$h_subject:'}}
# потом ещё один accept
accept

Добавлено: 2006-08-20 15:10:52
robi
accept
domains = {lookup mysql \
{SELECT `domain` FROM `domain` WHERE \
`domain`=`${qualify_domain}` AND`log`= `1`}
set acl_m6 = ${lookup mysql{INSERT INTO `stat` SET \
XFrom='${sender_address}', \
XTo=REPLACE('${recipients}',', ','\n'), Size=${message_size}, \
Subj='$h_subject:'}}
# потом ещё один accept
accept
вообще почта не доставляеться

Добавлено: 2006-08-20 15:15:30
Alex Keda
:)
а в system_filter всё это делать идеология не позволяет? там можно и if и then применять...

Добавлено: 2006-08-20 15:42:17
robi
lissyara писал(а)::)
а в system_filter всё это делать идеология не позволяет? там можно и if и then применять...
пробовал...
что бы долго не мучиться пробовал записывать в лог вместо копирования почты, было вот так

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

if $recipients is "${lookup mysql{SELECT `address` FROM `alias` WHERE \
                   `address`='$recipients' AND `copy_mail`='1' LIMIT 1}}"
then
        # кому копируем (можно на локальный адрес, можно на
        # любой другой сервер инета)
#        unseen deliver copymail@mail221.ru
"${lookup mysql{INSERT INTO `maillog` SET \
                datetime='${tod_log}', \
                mailid='${message_id}', \
                mfrom='${sender_address}', \
                mto=REPLACE('${recipients}',', ','\n'), size=${message_size}, \
                subject='$h_subject:', \
                host='$sender_address_domain'}"


endif
а потом в mainlog читал

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

2006-08-20 16:39:22 1GEmaI-000AJW-1e Error in system filter: unknown filtering command ""${lookup" near line 14 of filter file

Добавлено: 2006-11-13 9:45:46
santinorostov
robi
И все таки ?
получилось ли с логами? Интересно....

Была у меня попытка реализовать сбор логов через routers
log:
driver = accept
condition=${lookup mysql {INSERT INTO log VALUES \
(NOW(),'${local_part}','${domain}','${sender_address_local_part}',\
'${sender_address_domain}',${message_size});}}
transport = fake
no_verify
unseen

неудачная... или скажем...не доведенная до конца..

Добавлено: 2006-11-13 11:49:32
dikens3
robi писал(а): надо будет передать. хотя скриптом с друго сервера засандалил 2 000 гдето за час.
(а VPS ОЧЕНЬ слабенький 500проц +96 памяти) - особой нагрузки небыло, хотя кламав еще не прикручен. надо буде повторить уже с ним и глянуть как реагировать будет.

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

Генерация писем для тестирования почтовиков. :-)
/usr/ports/benchmarks/postal