bounceHammer has been EOL'ed on February 29, 2016

製品ライフサイクルの終了

2010年3月にオープンソースソフトウェアとして公開して以来、多くのユーザ様・企業様にダウンロードし、 ご利用いただきましたbounceHammerは、2016年2月29日(月)を持ちまして製品ライフサイクルの終了(EOL: End Of Life) となりました。長きにわたりbounceHammerをご使用いただき誠に有り難う御座いました。 開発元では後継となるバウンスメール解析ライブラリとして、より高精度で高速なSisimai(シシマイ) を二条項BSDライセンスで公開しています。

Sisimai
商用サポート

  • 1一式導入・設定・保守・開発の補助
  • 2独自MTA用解析モジュールの開発
  • 3個別案件の対応とメールサポート
  • 4バウンス管理・運用コンサルティング
  • 5スポット解析・解析済みデータ提供

logger/解析済データの集積

 

logger - 解析済データのログファイルを集積

mailboxparser が作った解析結果のログファイルは、mailboxparserを起動した分だけ生成される一時的なものです。 1日に24回mailboxparserを起動したら24個の一時的なログファイルができます。

bounceHammerのloggerコマンドは、mailboxparserが生成した一時的なログファイルを、 日付(バウンスしてきた)ごとにファイルを分割し、正式なログファイルとして保存します。 このコマンドはインストールしたディレクトリ/bin/loggerにあります。

コマンドの使用例

loggerは、動作を決定するオプションのどれかをつけて起動するだけです。 loggerによって処理されたログファイルは、設定ファイルのdirectory->logで定義される ディレクトリに集積されます。利用可能なオプションは、--helpを付けて 起動すると表示されます。

一時的なログファイルを日付ごとに分割して集積(単純な連結)
# logger -c
 
集積対象となる一時的なログファイルの個数を表示
# logger --list
12
 
指定したファイルを日付ごとに分割して集積(単純な集積)
# logger -c /tmp/logfile.dat
 
指定したディレクトリにある一時的なログファイルを日付ごとに分割して集積(重複を除去してマージ)
# logger -m /var/tmp/logs/
 
ヘルプを表示
# logger --help

利用可能なオプション

動作用オプション

-c, --concatenate
mailboxparserが作った一時的なログファイルを、 日付別に分割して設定ファイル(etc/bouncehammer.cf)のdirectory->logで 定義されるディレクトリに集積します。

loggerを実行するユーザが、集積用のディレクトリに対して書き込み権限を持っている必要があります。

このオプションは、一時的なログファイルを単純に日付別ファイルに 連結をするだけですので、同じファイルを複数回処理させると重複が発生します。
-m, --merge (ver.2.2.0以降)
mailboxparserが作った一時的なログファイルを、日付別に分割して設定ファイル (etc/bouncehammer.cf)のdirectory->logで定義されるディレクトリに集積します。 loggerを実行するユーザが、集積用のディレクトリに対して書き込み権限を持っている必要があります。

このオプションは、一時的なログファイルと書き出し先の 日付別ログファイルの内容を全件照合し重複を除去し時系列に並べて書出します。 -c,--concatenateオプションと比べて処理にかなり時間がかかります。
-l, --list
設定ファイル(etc/bouncehammer.cf)のdirectory->spoolに、 分割・集積対象となる一時的なログファイルが何個あるか報告します。 それほど役に立つオプションではありません。

ログ用オプション

-f, --file ファイル名 (ver.2.2.0で廃止)
処理する一時的なログファイルを指定します。設定ファイル(etc/bouncehammer.cf)の directory->spoolで定義されたディレクトリ以外の場所にある一時的なログファイルを 処理する場合に使用します。
ver.2.2.0で廃止されました。 引数がファイルであるかディレクトリであるかは自動で判別されます。
-d, --dir ディレクトリ名 (ver.2.2.0で廃止)
処理する一時的なログファイルを指定します。 設定ファイル(etc/bouncehammer.cf)のdirectory->spoolで定義された ディレクトリ以外の場所にある一時的なログファイルを処理する場合に使用します。
ver.2.2.0で廃止されました。 引数がファイルであるかディレクトリであるかは自動で判別されます。
--strict (ver.2.2.0で廃止)
正式なログファイルの記録に重複がないように集積用ディレクトリに ファイルを生成します。このオプションを指定しない場合、 同一の一時的なログファイルをloggerで複数回処理すると、 集積用ディレクトリに書き出される正式なログファイルの内容は、 loggerの処理を実行した分だけ重複します。 重複を除去するには、loggerを実行する際に必ずこの--strict オプションを付けるか、重複を含むログファイルをUNIXのsort,uniqコマンドで 処理してください。
内部動作の変更に伴い、-m,--merge オプションに統合されました。
--truncate
集積が完了した後に、一時的なログファイルのサイズを0にします。
--remove
集積が完了した後に、一時的なログファイルを削除します。
--backup ディレクトリ名 (ver.2.2.0以降)
集積が完了した後に、指定したディレクトリにmailboxparserが作った 一時的なログファイル移動します。

その他のオプション

-B, --batch (ver.2.3.1以降)
バッチモードで起動します。--log(-l)オプションを付けているときのみ、 集積結果の概要をYAML形式で出力します。パイプでメールにして送信したりするときに便利でしょう。
-C, --conf 設定ファイル
読み込む設定ファイルを指定します。このオプションを使用しない場合、 インストール先/etc/bouncehammer.cfが使用されます。 複数の設定ファイルを処理毎に使い分ける場合などでは有用でしょう。
-T, --test
テストモードで動作します。通常は動作に必要な設定値を インストール先/etc/bouncehammer.cfから読出しますが、 このオプションを指定するとbouncehammer.cfが無くても動作します。 -C test-run.cf と等価です。
--silent
このオプションを付けると、次の-v, --verboseオプションの有無にかかわらず 冗長なメッセージおよびエラーの出力がなくなります。 また、コマンドをsendmail等のデーモンが実行した場合、エラーが起きてもexit(0)=成功で終了します。 --silentオプションを付けずにsendmail等MTAがコマンドを起動し、 エラーが発生した場合はexit(75)=EX_TEMPFAILで終了します。
-v, --verbose
処理過程が冗長に表示されます。
--help
コマンドのヘルプが表示されます。
--version
バージョン番号が表示されます。

コマンド実行結果のスクリーンショットでの説明

logger -vvvvv -c --batch --remove

下記のスクリーンショットは、mailboxparserコマンドが書き出した解析結果の 一時ログファイルを読み出し、日付別に分割・連結するコマンドと出力内容の説明です。