制作実績に戻る
公開済みオープンソース2026

MQ Watcher

ActiveMQ Classicのメッセージストアを調べるオープンソースツールです。元のファイルを変更せず、メッセージ、受領確認、トランザクションをローカルで追跡できます。

実際のシステム

ActiveMQ Classicのストアスナップショットを開き、メッセージ、受領確認、購読、トランザクションを調べます。MQ Watcherは各レコードをジャーナルファイルとバイト位置に結び付け、運営者が元の根拠を確認できるようにします。

ストア概要 — 解析したジャーナル構造。
メッセージ追跡 — 1つのJMSMessageIDを全ストアの根拠で追跡(v0.4.0)。
スナップショット比較 — 2つのストア状態のA/B差分。

できること

KahaDBジャーナルの構造(バッチ、レコードヘッダー、コマンドの包み、チェックサム)を解析し、関連する根拠をつなぎます。複数ストアをタブで開き、2つのスナップショットA/Bを比較し、完全一致のJMSMessageIDを全ストアの根拠から追跡できます。障害メモを保存し、ジャーナルの保持状況を確認し、機密情報を除いた根拠一式を出力できます。

運用方式

ストアを書き込み用に開かず、製品JARを読み込まず、復旧や圧縮も開始せずに読み取ります。誤ったランタイムや復旧経路でブローカーストアを開くと変わりうる調査対象の根拠を保全します。CLIは127.0.0.1にのみバインドし、アップロード用エンドポイントはありません。

根拠の流れ

Workerが内容ベースのSHA-256署名からストアの識別情報を算出するため、ディレクトリ名が変わっても識別を維持し、スナップショット間で意味のある比較ができます。各固定データテストでは、走査の前後にすべての元ファイルをハッシュ化し、1バイトでも変化すると失敗を報告します。不明な構造は推測せず、Unknown / Unsupported / Partialの表示を保ちます。

検証した範囲

バージョン0.4.0をGitHubで公開しています。完全一致のJMSMessageID追跡に対応しています。互換性表には検証したActiveMQのバージョンと条件を記載しているので、異なるストア形式で使う前に確認してください。

対応範囲の限界

MQ Watcherは、ストアの根拠から分かることを示します。手掛かりごとに抽出理由と根拠の限界を説明し、原因分析と復旧は別の作業として扱います。