bounceHammer has been EOL'ed on February 29, 2016

Sisimai
商用サポート

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

bounceHammer 2.2.0

2010/04/16

bounceHammer 2.2.0 Release

bounceHammer 2.2.0をリリースしました。


主な変更点は次の通り(リリースノートから抜粋)です。全ての変更点は リリースノート[日本語] をご覧ください。 ソースアーカイブは ダウンロードから入手して下さい。

主な変更点

新機能

  • bounceHammerがApache2.2上のmod_perl2で動作するようになりました。
  • qmailのバウンスメール(QSBMF)も解析できるようになりました。
  • WebUIでJSONフォーマットでのダウンロードが可能になりました。
  • bin/mailboxparser コマンドの新しいオプション: --skip-temperrorと --backup
  • bin/logger コマンドの新しいオプション: --merge と --backup
  • bin/logger から次のオプションが削除されました: -f(--file), -d(--directory), --strict.

細かな改善点

  • mailboxparserの解析精度が向上しました。
  • HTMLテンプレートとスタイルシートの改善。
  • 新しいmakeターゲット:check-implement, apply-patch, reverse-patch
  • WebUIのDispatch設定(CGI)はDispatch.pmに移動しました。
  • configureスクリプトは"patch"プログラムを必要とし、 また、ファイルハンドルに対する-T,-B演算子の実装をチェックします。
  • ./diffディレクトリにあるパッチはmakeコマンド実行時に自動的に適用されます。
  • WebUIでマスターテーブルの内容をページ分割して表示します。

修正されたバグ

  • WebUI のページフッタ内リンクテキストの色が薄すぎる点を修正しました: share/template/standard/stylesheet/bouncehammer.cf
  • WebUIのURLテキストをクリックしても選択されない問題を修正。
  • (patch:001) datadumperとWebUI検索フォームで、addresserによる並べ替え指定時に結果が得られない問題を修正。
  • (patch:002) Makefileが不完全であった問題を修正しました。
  • (patch:003) share/script/{SQLite,MySQL,PostgreSQL}.sql内において t_bouncelogs.recipientから一意制約を削除しました。
  • bin/mailboxparser がファイル名にカンマを含むファイルを読出せない問題を修正しました。

bounceHammer 2.2.0へアップグレードする

ダウンロードページのリンクから bounceHammer-2.2.0のアーカイブ(Tar ball)を入手してください。

Version 2.2.0用のパッチが公開されている場合は、configure, make を実行する前に必要なパッチをダウンロードし、ソースに適用してください。


パッチの適用

bounceHammer-2.2.0のアーカイブを展開後、 diff/2.2.0/001-mail-bounced-find-addresser-address.patch のパッチをダウンロードし、configure, makeの前にパッチを当ててください。

# cd bouncehammer-2.2.0
# wget 'http://dist.bouncehammer.jp/diff/2.2.0/001-mail-bounced-find-addresser-address.patch'
# patch -p0 < ./001-mail-bounced-find-addresser-address.patch

CGIスクリプトの差し替え

2.2.0からDispatcherの設定がライブラリ内に移動しましたので、 CGIスクリプトをそれぞれ新しいもので上書きしてください。

mod_perl2で動作させる場合は、bounceHammerを インストールしたディレクトリ/etcのhttpd.conf-exampleを参考にしてください。

# cd /usr/local/bouncehammer/share/script
# cp bouncehammer.cgi /home/bouncehammer/public_html/index.cgi
# chmod a+x /home/bouncehammer/public_html/index.cgi

DBから一意制約(UNIQUE)の削除/MySQL,PostgreSQL

Version 2.2.0より前のソースコード付属のSQLファイルの記述ミスによるバグで、 t_bouncelogs テーブルの recipient カラムに一意制約(UNIQUE)がついている場合に、 異なる発信者アドレスと同じ受信者アドレスの組み合わせのデータが、 この制約にひっかかって登録されない問題がありました。。

旧バージョンから2.2.0へアップグレードされる方はご面倒をおかけしますが、 下記の実行例に従ってt_bouncelogs.recipientからUNIQUEを外してください。

UNIQUE制約をはずす(MySQL)
> ALTER TABLE t_bouncelogs DROP INDEX recipient;
 
 
UNIQUE制約をはずす(PostgreSQL)
bouncehammer=# \di ⏎ UNIQUE制約によってできたINDEXを確認、名前を指定してDROP
...
public | t_bouncelogs_recipient_key | index | bouncehammer | t_bouncelogs
bouncehammer=# ALTER TABLE t_bouncelogs DROP CONSTRAINT t_bouncelogs_recipient_key

UNIQUE制約の削除後、念のため解析済みデータの再登録を行ってください。 解析済みデータおよびデータベースの中に発信者アドレスが1種類しかない場合は、 この問題の影響は受けていませんので、データの再登録の必要はありません (UNIQUE制約の削除は行ってください)

loggerコマンド

loggger コマンドから-f,--file,-d,--directory,--strictオプションが無くなりました。 バッチ処理の為にcrontab等で-f(--file),-d(--directory)オプションでファイルや ディレクトリを指定されていた方は、オプションを削除してください。

version 2.2.0のloggerコマンドは引数の中からファイルやディレクトリを自動で見付けます。 また、--strictコマンドを-c(--concatenate)オプションと共に指定していた場合は、 -m(--merge)オプション一つに変更してください。