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スポット解析・解析済みデータ提供

bounceHammerのコマンドラインツール

 

コマンドラインツールについて

bounceHammerをインストールすると、いくつかのコマンドラインツール が使えるようになります。bin/ディレクトリの中にインストールされたコマンドは、 解析や集積、維持、管理などそれぞれ役割を持っています。



まずはバウンスメールの解析から

これらのコマンドを使う前提として、全ては解析すべきバウンスメール(エラーで返ってきたメール) が存在するところから始まります。

bounceHammerは、ファイルとしての電子メール(メールソフトで受信したもの等) やメールボックス(メールサーバに保存されているmbox形式)、 メールフォルダ(メールサーバに保存されているMaildir形式)等、 必要な電子メールヘッダと内容を含むテキストデータを元データとして解析を行います。

手元のPCやサーバに残っている過去に受信したメールでも解析が可能です。

コマンドラインツールの一覧

 

mailboxparser - バウンスメールの解析

bounceHammerの解析エンジンが、元データからエラー理由(宛先不明、 メールボックスがいっぱい、存在しないドメイン等に加えて携帯電話に特有のドメイン指定拒否、 ほか多数)と宛先分類(携帯電話、スマートフォン、Webメール、PC)を抽出します。

この処理は mailboxparser コマンドが担当し、解析結果はファイルとして保存されます。


logger - 解析済データの集積

bounceHammerの解析エンジン /mailboxparser コマンドがデータ化してファイルに保存した内容は、集積プログラムによって時系列に 並べられ日付ごとのファイルとして整理・保存されます。

この処理はlogger コマンドが担当します。


databasectl - 解析済データのDB登録

集積プログラム /logger コマンドによって1日1ファイルとして集積された解析済みデータは、 維持プログラムによって逐次データベースに記録されます。

DBに記録する際に、発信者アドレス(Addresser)と受信者アドレス(Recipient)の組み合わせが 既にデータベースに存在した場合は、記録するデータとデータベースに存在するデータを照合し、 新しければ最新の情報(別のエラー理由、差し戻し日時等)で上書きします。

この処理はdatabasectl コマンドが担当します。


datadumper - DBに登録したデータを出力

データベースに蓄積されているデータは、参照プログラムによって閲覧(全件表示や最新のものから確認等)、 検索(携帯電話のみ、メールボックスがいっぱいの状態のもののみ等の指定条件)が可能です。 出力形式はプログラムとの照合用に便利なYAML/JSON、そして表計算ソフトウェアで縦覧がしやすいCSVです。

この処理は datadumper コマンドとブラウザベースの管理画面(WebUI)が担当します。


summarizer - 解析済データの簡易統計

データベースに蓄積されている、またはファイルに書出されたバウンス記録は、 集約プログラムによって項目別の集約結果、基本統計量を得る事が可能です。

この処理はbounceHammer 2.4.0から登場した summarizer コマンドとブラウザベースの管理画面(WebUI)が担当します。


tablectl - マスタデータの登録・更新・削除

bounceHammerのデータベースのマスターテーブル(発信者ドメイン:SenderDomains, 宛先ドメイン:Destinations, 宛先分類:HostGroups, 宛先所属:Providers, 差戻理由: Reason) の操作は、マスタテーブル制御コマンド tablectlを使用します。 マスターテーブルの操作は、制御可能な部分は限定されていますが管理画面(WebUI)からも可能です。


messagetoken - メッセージトークンの生成

データベースに保存されているバウンスの記録をに特定するためのメッセージトークン (発信者アドレス:Addresserと受信者アドレス:Recipientから作られる一意の文字列)は、 messagetoken コマンドまたは管理画面(WebUI)で生成可能です。

メッセージトークンはAPIで任意の記録を取り出すためにも使用します。