ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
From: Dmitry Lebkov <dima@sakhalin.ru>
To: sisyphus@altlinux.ru
Subject: Re: [sisyphus] postfix traffic collector
Date: Fri, 23 May 2003 01:46:22 +1100
Message-ID: <20030523014622.2c788944.dima@sakhalin.ru> (raw)
In-Reply-To: <3ECCDB5B.9040908@yauza.ru>

On Thu, 22 May 2003 18:14:51 +0400
"Pavel S. Khmelinsky" <hmepas@yauza.ru> wrote:

> Dmitry Lebkov wrote:
> > On Thu, 22 May 2003 12:39:03 +0400
> > Igor Dobryninsky <egor@atvc.ru> wrote:
> > 
> > 
> >>  Hello, Mike Lykov.
> >>
> >>On Thu, 22 May 2003 09:31:15 +0500
> >>Mike Lykov <combr@vesna.ru> wrote:
> >>
> >>ML> но мне подсказали - в каждой строчке есть pid... соответственно
> >>ML> можно суммировать записи об одном процессе  (получения
> >конкретного>ML> письма) относительно его pid, который в разных
> >строчках (даже>ML> разнесенных далеко) будет один и тот же.. если
> >postfix конечно его>ML> пишет ;)
> >>
> >>  Дело в том, что постфикс, по сути дела, это набор
> >>узкоспециализированных программ, которые последовательно запускаются
> >>менеджером для обработки письма. Поэтому pid тут не поможет. Тут
> >>поможет уникальный МessageId, который присваивается каждому письму.
> >>Вот по нему и надо фильтровать.
> >>
> >>  МessageId в логе постфикса указывается как раз после
> >идентификатора>процесса программы-обработчика. Вот пример:
> > 
> > 
> > Это не message id - это mail-queue-id. А message-id идет
> > строчкой ниже - в сообщении от postfix/cleanup. Вот по
> > комбинации нескольких mail-queue-id и одного message-id
> > можно отследить весь цикл доставки сообщения, т.к. message-id
> > на всех этапах доставки(DrWeb, filters, etc) остается без
> > изменений, а mail-queue-id -- меняется.
> > 
> > 
> >>May 22 12:34:36 troitsky postfix/pickup[7125]: 747A710E4: uid=112
> >>from=<community-admin@altlinux.ru>
> >>                                               ^^^^^^^^^
> >>May 22 12:34:36 troitsky postfix/cleanup[7160]: 747A710E4:
> >>message-id=<015d01c3203c$9f289770$3d01a8c0@plant.odescable.com.ua>
> >May>22 12:34:36 troitsky postfix/qmgr[6250]: 747A710E4:
> >>from=<community-admin@altlinux.ru>, size=3651, nrcpt=1 (queue
> >active)>May 22 12:34:36 troitsky postfix/local[7167]: 747A710E4:
> >>to=<egor@atvc.ru>, relay=local, delay=0, status=sent
> >>("|/usr/bin/procmail -a $DOMAI
> >>
> >>  Однако, дело может осложнить, например, DrWeb, если он
> >используется,>или SpamAssassin или ещё что-нибудь подобное.
> 
> Я так и знал. Готового решения никто не знает. Сейчас подумываю 

Формат логов постфикса еще в процессе (до|раз)работки и до конца не
стабилизирован. И, в отличии от того же сендмыла, достаточно неудобен
для разбора.

> прикрутить как раз еще одну самописную програмку, которая будет 
> подключатся также как DrWeb а потом уже сама передавать сообщение 
> дальше.
> 
> Т.е. что-нибудь вроде
> 
> avcheck   unix  -       n       n       -       5       pipe 
> flags=q user=email_traf argv=email_traff_log -p 1025
> 
> localhost:1025  inet n       -      n      -       - smtpd
> 
> в master.cf
> 
> Есть мысли о предстоящих трудностях? Или готовые куски кода для 
> парсинга сообщения и подсчитывания его длинны в байтах?

Есть предположение, что после передачи сообщения через smtpd (а не
через pipe) может измениться message-id. Но это только предположение %)

Сейчас пишется парсер на перле, который _должен_ учесть все особенности
имеющегося в ALM постфикса. Задача - учет успешно доставленных сообщений
(для системы расчетов ISP). Данные складываются в MySQL. Если получится
что-нить приличное %) -- можно будет попытаться либо завернуть это в
пакет, либо добавить как contrib к постфиксу. 

--
WBR, Dmitry Lebkov


  reply	other threads:[~2003-05-22 14:46 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-05-22  3:18 Pavel S. Khmelinsky
2003-05-22  4:31 ` Mike Lykov
2003-05-22  8:39   ` Igor Dobryninsky
2003-05-22 12:13     ` Dmitry Lebkov
2003-05-22 14:14       ` Pavel S. Khmelinsky
2003-05-22 14:46         ` Dmitry Lebkov [this message]
2003-05-22 18:53           ` Pavel S. Khmelinsky
2003-05-22 21:31             ` Dmitry Lebkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030523014622.2c788944.dima@sakhalin.ru \
    --to=dima@sakhalin.ru \
    --cc=sisyphus@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sisyphus


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git