• お問い合わせ
  • ユーザー登録
ドキュメント
サポート案内
ユーザー登録
サポートセンター
ドキュメント
ダウンロード
セキュリティ
よくある質問とその回答
製品マニュアル
カタログ
収録パッケージ一覧


既知の問題 No. 857

[電子メール転送] 機能を利用しているユーザ宛のリクエストが利用状況に反映されない


【 現象 】

[電子メール転送] 機能を利用しているユーザ宛のメールが利用状況
の[電子メール]に反映されません。

【 原因 】

本現象は、[電子メール転送] 機能を利用している場合に出力される
/var/log/maillog のログが、利用状況で解析するログの対象になら
ないことに起因して発生しています。

Turbolinux Appliance Server 2.0 では、電子メールサーバとして 
sendmail を採用しています。電子メールの利用状況は、sendmail が
出力する /var/log/maillog を Analog で解析できるフォーマットに
変換し、その情報を元に表示しています。
その基本的な動作は以下のようになっています。

1. /var/log/maillog を while 文で1行ずつ読み込み、from=< の
   正規表現にマッチした行の情報(message_id、from、size など)
   を配列に保持しておきます。

2. 同様にループ処理で to=<.*stat=sent の行にマッチしたとき、
   その行の情報(mon, day, time, message_id, to など)を保持し、
   その to 行の message_id と同じ message_id を持つ、
   from=<(すでに保持している)とのペアから Analog が解析できる
   フォーマットに変換を行います。

しかし、[電子メール転送] 機能を利用した場合に sendmail が
/var/log/maillog に出力する to は "<" と ">" で括られません。
以下は [電子メール転送] 機能を利用しているユーザ宛にメールを
送信した際のログの一例です。
------------------------------------------------------------------------
Sep  7 tlas2 sm-mta[18448]: o883GO1T018448: from=<user1@example1.com>, 
size=602, class=0, nrcpts=1, msgid=<4C870089.6030006@host.example1.com>, 
proto=ESMTP, daemon=MTA, relay=host.example1.com [xxx.xx.xx.xx]

Sep  7 tlas2 sm-mta[18449]: o883GO1T018448: to=user2@example2.com, 
delay=00:00:01, xdelay=00:00:00, mailer=esmtp, pri=60804, 
relay=host.example2.com [yyy.yy.yy.yy], dsn=2.0.0, stat=Sent 
(Ok: queued as 1D40760EF7)
------------------------------------------------------------------------

to=user2@example2.com が "<" と ">" で括られていないため 
to=<.*stat=sent の正規表現にマッチせず、利用状況で解析するログ
の対象とはなりません。また、"< >" で括られていない from 行や 
to 行も解析対象となるように正規表現から < を削除してしまうと、
リクエストが正常にカウントされないなど、他の弊害が利用状況に
発生してしまいます。

【 対策 】

Turbolinux Appliance Server 2.0 は、message_id が同じ from=< 
と to=<.*stat=sent のログのペアから利用状況に表示される統計を
採取しており、これは Turbolinux Appliance Server 2.0 の仕様と
なります。
メール転送機能を利用しているアドレス宛のリクエストが利用状況
に反映されない件につきましては、誠にご迷惑をお掛けしますが、
制限事項となりますのでご了承ください。

関連文書
(none)

対象製品
  • Turbolinux Appliance Server 2.0
    Last modified : Wed Sep 08 JST 2010 # 3