From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <3ECD1CB2.6040305@yauza.ru> Date: Thu, 22 May 2003 22:53:38 +0400 From: "Pavel S. Khmelinsky" User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030331 X-Accept-Language: ru, en-us, en MIME-Version: 1.0 To: sisyphus@altlinux.ru Subject: Re: [sisyphus] postfix traffic collector References: <3ECC4191.6060401@yauza.ru> <200305220931.15658.combr@vesna.ru> <20030522083903.6DE8C10E2@troitsky.atvc.ru> <20030522231307.0470cce0.dima@sakhalin.ru> <3ECCDB5B.9040908@yauza.ru> <20030523014622.2c788944.dima@sakhalin.ru> In-Reply-To: <20030523014622.2c788944.dima@sakhalin.ru> X-Enigmail-Version: 0.73.1.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit Sender: sisyphus-admin@altlinux.ru Errors-To: sisyphus-admin@altlinux.ru X-BeenThere: sisyphus@altlinux.ru X-Mailman-Version: 2.0.9 Precedence: bulk Reply-To: sisyphus@altlinux.ru X-Reply-To: hmepas@yauza.ru List-Unsubscribe: , List-Id: List-Post: List-Help: List-Subscribe: , List-Archive: Archived-At: List-Archive: Dmitry Lebkov wrote: > On Thu, 22 May 2003 18:14:51 +0400 > "Pavel S. Khmelinsky" wrote: > > >>Dmitry Lebkov wrote: >> >>>On Thu, 22 May 2003 12:39:03 +0400 >>>Igor Dobryninsky wrote: >>> >>> >>> >>>> Hello, Mike Lykov. >>>> >>>>On Thu, 22 May 2003 09:31:15 +0500 >>>>Mike Lykov 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= >>>> ^^^^^^^^^ >>>>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=, size=3651, nrcpt=1 (queue >>> >>>active)>May 22 12:34:36 troitsky postfix/local[7167]: 747A710E4: >>> >>>>to=, relay=local, delay=0, status=sent >>>>("|/usr/bin/procmail -a $DOMAI >>>> >>>> Однако, дело может осложнить, например, DrWeb, если он >>> >>>используется,>или SpamAssassin или ещё что-нибудь подобное. >> >>Я так и знал. Готового решения никто не знает. Сейчас подумываю > > > Формат логов постфикса еще в процессе (до|раз)работки и до конца не > стабилизирован. И, в отличии от того же сендмыла, достаточно неудобен > для разбора. Это я заметил %:) > > Сейчас пишется парсер на перле, который _должен_ учесть все особенности > имеющегося в ALM постфикса. Задача - учет успешно доставленных сообщений > (для системы расчетов ISP). Данные складываются в MySQL. Если получится > что-нить приличное %) -- можно будет попытаться либо завернуть это в > пакет, либо добавить как contrib к постфиксу. Уже есть куски кода на которые можно взглянуть? Может мне их и хватит?