DBeaver からRabbitMQ のデータに連携して可視化する方法とは?

加藤龍彦
加藤龍彦
デジタルマーケティング
クエリブラウザなどのDBeaver のビジュアルツールを使ってRabbitMQ のデータを管理する方法を解説します。



CData JDBC Driver for API は、IDE からBI ツールまで、サードパーティーツールからRabbitMQ のデータの読み書きを可能にするJDBC 標準を提供します。本記事では、DBeaver のウィザードを使ってRabbitMQ のデータに接続し、GUI 上でデータを参照する方法を紹介します。

CData JDBC ドライバとは?

CData JDBC ドライバは、以下の特徴を持ったリアルタイムデータ接続ツールです。

  1. RabbitMQ をはじめとする、CRM、MA、グループウェア、広告、会計ツールなど多様な270種類以上のSaaS / DB に対応
  2. DBeaver を含む多様なアプリケーション、ツールにRabbitMQ のデータを連携
  3. ノーコードでの手軽な接続設定
  4. 標準 SQL での柔軟なデータ読み込み・書き込み

CData JDBC ドライバでは、1.データソースとしてRabbitMQ の接続を設定、2.DBeaver 側でJDBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。

CData JDBC ドライバのインストールとRabbitMQ への接続設定

まずは、本記事右側のサイドバーからAPI JDBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。

次に、以下の手順でDBeaver にドライバーのJAR ファイルをロードします。

  1. DBeaver アプリケーションを開き、「データベース」メニューの「ドライバーマネジャー」オプションを選択します。「新規」をクリックして「新しいドライバを作成する」フォームを開きます。
  2. 設定タブで:
    • ドライバ名をわかりやすい名前に設定します(例:CData JDBC Driver for RabbitMQ)。
    • クラス名をJDBC ドライバーのクラス名「cdata.jdbc.api.APIDriver」に設定します。
    • URL テンプレートjdbc:api: に設定します。
    新しいドライバーの設定(Salesforce の場合)。
  3. ライブラリタブで「ファイルを追加」をクリックし、インストールディレクトリ(C:\Program Files\CData\CData JDBC Driver for RabbitMQ XXXX\)の「lib」フォルダに移動してJAR ファイル(cdata.jdbc.API.jar)を選択します。 JDBC JAR ファイルをロード(Salesforce の場合)。

RabbitMQ のデータの接続を作成

以下の手順で、認証情報およびその他の必要な接続プロパティを追加します。

  1. 「データベース」メニューで、「新しい接続」をクリックします。
  2. 表示される「新しい接続を作成する」 ウィザードで、先ほど作成したドライバー(例:CData JDBC Driver for RabbitMQ)を選択し、「次へ >」をクリックします。 ドライバーを選択(Salesforce の場合)。
  3. 設定ウィザードの一般タブで、以下を参考に必要な接続プロパティを使用してJDBC URL を設定します。

    RabbitMQ Management HTTP API について

    RabbitMQ は、複数のメッセージングプロトコルをサポートするオープンソースのメッセージブローカーです。RabbitMQ Management HTTP API は、RabbitMQ サーバーの管理データと監視データに HTTP 経由でアクセスする手段を提供します。この API では、仮想ホスト、エクスチェンジ、キュー、バインディング、コネクション、チャネル、コンシューマー、ユーザー、権限、ポリシー、クラスター全体の統計情報を取得できます。

    HTTP API を利用するには、RabbitMQ サーバーで Management プラグインを有効化する必要があります。デフォルトでは、管理インターフェースはポート 15672 でリッスンします。

    Basic 認証の設定

    RabbitMQ Management HTTP API は HTTP Basic 認証を使用します。RabbitMQ 管理ユーザーのユーザー名とパスワードを指定する必要があります。

    管理 API へのアクセスを有効にするには、以下のステップで進めます:

    1. サーバーで RabbitMQ Management プラグインが有効になっていることを確認します(rabbitmq-plugins enable rabbitmq_management)。
    2. 既存の管理ユーザーを使用するか、適切な管理タグ(management、policymaker、monitoring、または administrator)を持つユーザーを作成します。
    3. RabbitMQ Management HTTP API の完全なベース URL を控えておきます(例:http://localhost:15672)。

    RabbitMQ サーバーを設定したら、以下の接続プロパティを設定して接続します:

    • AuthScheme:Basic に設定します。
    • URL:RabbitMQ Management HTTP API のベース URL に設定します(例:http://localhost:15672)。
    • User:RabbitMQ の管理ユーザー名に設定します(例:guest)。
    • Password:RabbitMQ の管理パスワードに設定します。

    接続文字列の例:

    Profile=C:\profiles\RabbitMQ.apip;AuthScheme=Basic;URL=http://localhost:15672;User=guest;Password=guest;
    

    利用可能なテーブル

    RabbitMQ プロファイルでは、以下のテーブルにアクセスできます:

    • Overview - クラスター全体の統計情報と RabbitMQ ノードに関する情報
    • Nodes - RabbitMQ クラスター内の個々のノードに関する情報
    • NodeMemory - 特定のクラスターノードの詳細なメモリ使用状況の内訳
    • Connections - ブローカーへのすべてのオープンな AMQP コネクションの一覧
    • Channels - すべてのコネクションにわたるオープンな AMQP チャネルの一覧
    • Consumers - すべてのキューに登録されたコンシューマーの一覧
    • Exchanges - すべての仮想ホストで宣言されたエクスチェンジの一覧
    • Queues - すべての仮想ホストで宣言されたキューの一覧
    • Bindings - エクスチェンジとキュー間のすべてのバインディングの一覧
    • VirtualHosts - ブローカーに設定された仮想ホストの一覧
    • VhostPermissions - 特定の仮想ホスト内のユーザー権限
    • Users - すべての RabbitMQ ユーザーの一覧
    • Permissions - すべての仮想ホストにわたる全ユーザーの権限レコード
    • TopicPermissions - 全ユーザーのトピックレベルの権限レコード
    • Policies - 仮想ホスト内のキューおよびエクスチェンジに適用されたポリシーの一覧
    • OperatorPolicies - 仮想ホスト内のキューに適用されたオペレーターポリシーの一覧
    • Parameters - 仮想ホストごとのコンポーネントパラメータ(例:federation、shovel)の一覧
    • GlobalParameters - すべての仮想ホストに適用されるグローバルパラメータの一覧
    • VhostLimits - 特定の仮想ホストに設定されたリソース制限
    • UserLimits - 特定のユーザーに設定されたリソース制限
    • FeatureFlags - フィーチャーフラグの一覧と、ノード上での有効/無効の状態
    • DeprecatedFeatures - 非推奨機能の一覧と、その使用状態
    • AuthAttempts - ノードの認証試行統計
    • ClusterName - RabbitMQ クラスターの名前
    • WhoAmI - 現在認証されている管理ユーザーに関する情報
    • ExchangeBindingsSource - 特定のエクスチェンジがソースとなっているバインディング
    • ExchangeBindingsDestination - 特定のエクスチェンジが宛先となっているバインディング
    • QueueBindings - 仮想ホスト内の特定のキューのバインディング

    組み込みの接続文字列デザイナー

    JDBC URL の作成の補助として、RabbitMQ JDBC Driver に組み込まれている接続文字列デザイナーが使用できます。JAR ファイルをダブルクリックするか、コマンドラインからjar ファイルを実行します。

    java -jar cdata.jdbc.api.jar
    

    接続プロパティを入力し、接続文字列をクリップボードにコピーします。

    組み込みの接続文字列デザイナーを使ってJDBC URL を生成(Salesforce の場合)

    一般的な接続文字列:

    jdbc:api:Profile=C:\profiles\\RabbitMQ.apip;AuthScheme=Basic;URL=http://localhost:15672;User=guest;Password=guest;
    
    JDBC URL を設定(Salesforce の場合)。
  4. 「テスト接続」をクリックして、接続が正しく設定されていることを確認します。 正しく設定された接続(Salesforce の場合)。
  5. 「終了」をクリックします。

RabbitMQ のデータにクエリを実行

これで、接続できたことで公開されたテーブルのデータにクエリを実行できるようになりました。テーブルを右クリックし、「ビュー表」をクリックします。「データ」タブでデータを確認できます。

DBeaver でのクエリの結果(Salesforce の場合)。

おわりに

CData JDBC Driver for API の 30日間無償トライアル をダウンロードして、DBeaver でリアルタイムRabbitMQ のデータの操作をはじめましょう!ご不明な点があれば、サポートチームにお問い合わせください。

はじめる準備はできましたか?

API Driver で RabbitMQ のライブデータに接続

RabbitMQ に接続