RabbitMQ のモニター

「 Instana 」センサー( RabbitMQ )を使用することで、 RabbitMQ のインスタンスを監視できます。 「 Instana 」エージェントをインストールすると、「 RabbitMQ 」センサーが自動的に展開およびインストールされます。 「 Instana 」のUIでは、 RabbitMQ インスタンスに関連するメトリクスを確認できます。

サポート情報

RabbitMQ センサーが現在の環境と互換性があるかどうかを確認するには、以下のサポート情報セクションをご確認ください:

対応バージョンとサポート方針

このセンサーは、 3.6.x から 4.0 までのバージョンの RabbitMQ に対応しています。

以下の表は、最新のサポート対象バージョンとサポート方針を示しています:

テクノロジー サポート・ポリシー 最新技術バージョン サポートされる最新バージョン
RabbitMQ 45 日間 4.3.2 4.3.2

サポートポリシーに関する詳細については、 「センサーのサポート戦略」 を参照してください。

構成

RabbitMQ センサーによる監視を有効にするには、以下の設定が必要です:

「 RabbitMQ 」管理プラグインを有効にする

RabbitMQ インスタンスからメトリクスを収集するには、 RabbitMQ Management プラグインを有効にしてください。 RabbitMQ 管理プラグインを有効にするには、次のコマンドを実行してください:

rabbitmq-plugins enable rabbitmq_management
 

センサー認証の設定

RabbitMQ の管理インターフェースで認証が必要な場合、次の例に示すように、 <agent_install_dir>/etc/instana/configuration.yaml エージェントの設定ファイルに認証情報を追加することで、センサーがそれらの認証情報を使用するように設定できます

com.instana.plugin.rabbitmq:
  user: 'guest'
  password: 'guest'
 

カスタムポーリングレート

エージェントの configuration.yaml ファイルにある %poll_rate; パラメータを使用することで、 Instana が RabbitMQ からデータやメトリクスを収集するためにポーリングを行う頻度を設定できます。
com.instana.plugin.rabbitmq:
  poll_rate: 5 # values are in seconds. Default value is 5 second.

コンテキストパスの設定

RabbitMQ の管理インターフェースにルートパス以外からアクセスする場合は、 contextPath パラメータを設定できます。 この設定により、管理インターフェースがルートパス( https://your-server:15672/ )ではなく、非ルートパス(例: https://your-server:15672/rabbitmq/ )で利用可能な場合でも、センサーが API 形式のURLを正しく生成できるようになります。

コンテキストパスを設定するには、エージェントの設定ファイルに次のように contextPath パラメータを追加してください:

com.instana.plugin.rabbitmq:
  user: 'guest'
  password: 'guest'
  contextPath: '/rabbitmq' # Specify if RabbitMQ Management API is accessed through a non-root path
 

カスタムポート設定

デフォルトでは、 RabbitMQ 管理プラグインは、ポート15672で HTTP リクエストを待機しています。 このポートは、特定の要件に合わせてカスタマイズすることができます。 HTTP へのアクセス用に管理インターフェースを別のポートで実行するように変更するには、ファイルを rabbitmq.conf 更新してください。

HTTP のカスタムポートの設定

HTTP へのアクセス用にカスタムポートを設定するには、ファイル rabbitmq.confmanagement.tcp.port パラメータを追加してください。

HTTPS のカスタムポートの設定

HTTPS へのアクセスを有効にし、 SSL / TLS の設定とともにカスタムポートを指定するには、ファイル rabbitmq.conf に および management.ssl.cacertfile management.ssl.port パラメータを追加してください。

注: 有効な証明書と鍵ファイルのパスを指定する必要があります。 この設定により、 HTTPS 経由で RabbitMQ の管理 UI に安全にアクセスできるようになります。

メトリックの表示

メトリックを表示するには、以下のステップを実行します。

  1. Instana のUIサイドバーで、 「インフラストラクチャ」 を選択します。
  2. 特定のモニター対象ホストをクリックします。 収集されたすべてのメトリクスと監視対象のプロセスが表示されたホストダッシュボードを確認できます。

RabbitMQ ノード・メトリック

各 RabbitMQ ノードから、以下のメトリクスが収集されます:

構成データ

RabbitMQ ノードから、以下の設定データが収集されます:

  • ポート
  • バージョン
  • Erlang バージョン
  • ノード名
  • ノード (カウント)
  • キュー (カウント)
  • チャネル (カウント)

パフォーマンス・メトリック

RabbitMQ センサーは5秒ごとにメトリクスを収集します。これは、 RabbitMQ サーバーのデフォルトのサンプリングレートです。

RabbitMQ の管理機能には、デフォルトのデータ保持ポリシーが用意されています。 グローバルデータは、5秒間隔で10分5秒間、1分間隔で1時間1分間、10分間隔で約8時間保存されます。 基本データは、5秒間隔で1分5秒間、1分間隔で1時間分保存されます。 詳細データは、10秒間隔で10秒分保存されます。 これら3つのポリシーはすべて必須であり、少なくとも1組の保持ペア( MaxAgeInSeconds とで構成される SampleEveryNSeconds)が必要です。 詳細については、 『 RabbitMQ 』のドキュメントを参照してください。

メッセージ

RabbitMQ ノードからは、以下のメッセージメトリクスが収集されます:

メトリック 説明
公開済み パブリッシュされたメッセージの数 (5 秒ごと)。
配信済み 配信されたメッセージの数 (5 秒ごと)。
確認済み クライアントに配信され、確認されたメッセージの数 (5 秒当たり)。
メッセージの状況

RabbitMQ ノードから、以下のメッセージステータス指標が収集されます:

メトリック 説明
レディー クライアントに配信する準備ができているメッセージの数。
未確認 クライアントに配信されたが、まだ確認されていないメッセージの数。
合計 キューに入っているメッセージの合計数。
準備完了レート クライアントに配信する準備ができている 1 秒当たりのメッセージ数。
未確認レート クライアントに配信されたが、まだ確認されていない 1 秒当たりのメッセージの数。
合計レート キュー内の 1 秒当たりの合計メッセージ数のカウント。
概要

以下の概要メトリクスは、 RabbitMQ ノードから収集されます:

メトリック 説明
コンシューマー コンシューマー数。
接続数 RabbitMQ サーバーへの現行接続数。
ノード (ノードごとのメトリック)

各 RabbitMQ ノードについて、以下のメトリクスが収集されます:

メトリック 説明
使用中のファイル記述子 使用中のファイル記述子の数。
ファイル記述子の総数 使用可能なすべてのファイル記述子の数。
使用中の Erlang プロセス 使用中の Erlang プロセスの数。
Erlang プロセスの最大数 使用可能な Erlang プロセスの最大数。
使用中のメモリー 使用されているメモリーの量。
メモリー制限 使用可能な最大メモリー。
ディスク・アラームしきい値 アラームの起動を回避するために維持する必要がある未使用ディスク・スペースの量。
空きディスク・スペース 未使用ディスク・スペースの量。
使用されたソケット数 ソケットとして使用されるファイル記述子の数。
合計ソケット数 ソケットとして使用できるファイル・ディスクリプターの数。
キュー (キューごとのメトリック)

デフォルトでは、キューのモニターは無効になっています。 詳細なメトリック・モニターを有効にするには、モニターするキュー (最大 1000 個のキュー) についてエージェントに通知します。 モニター用のキューは、エージェント構成ファイル <agent_install_dir>/etc/instana/configuration.yamlで構成できます。

com.instana.plugin.rabbitmq:
  queuesRegex: '.*' # Regex pattern used for matching monitored queues
  queuesBasePath: '/api/queues/' # Configure the queues api base path
  monitorQueues:
    - queue: 'instana1' # name of the queue
      vhost: '/' # name of the vhost, default is '/'
    - queue: 'stan1' # name of the queue
      vhost: '/' # name of the vhost, default is '/'
 
  • queuesRegex: キューを名前でフィルタリングするために使用されるオプションの正規表現パターン。 これは、 monitorQueues 構成と一緒に使用できます。
  • queuesBasePath: キューのオプションのベースパス API。 デフォルトでは、パスは. です /api/queues/

各キューについて、以下のメトリクスが収集されます:

メトリック 説明
準備完了メッセージ クライアントに配信する準備ができているメッセージの数。
未確認のメッセージ クライアントに配信されたが、まだ確認されていないメッセージの数。
メッセージ総数 キューにあるすべてのメッセージの数。
コンシューマー キューからのメッセージを使用するコンシューマーの数。

正常性シグニチャー

各センサーについて、着信メトリックに対して継続的に評価され、ユーザーの影響に依存する問題またはインシデントを発生させるために使用される、正常性シグネチャーのキュレートされた知識ベース。

組み込みイベントは、エンティティのヘルスシグネチャの異常に基づいて課題やインシデントをトリガーし、 カスタムイベントは、選択されたエンティティの個々のメトリクスのしきい値に基づいて課題やインシデントをトリガーします。

RabbitMQ クラスター、 RabbitMQ サーバー、 RabbitMQ ノード、および RabbitMQ キューのビルド・イベントについて詳しくは、 組み込みイベントのリファレンスを参照してください。

RabbitMQ クラスター・メトリック

各 RabbitMQ クラスターから、以下のメトリクスが収集されます:

構成データ

RabbitMQ クラスタから、以下の構成データが収集されます:

  • クラスター名
  • ノード (カウント)

パフォーマンス・メトリック

RabbitMQ クラスターから、以下のパフォーマンス指標が収集されます:

  • 稼働中のノード (カウント)
  • ダウンしているノード (カウント)
  • 接続数(カウント)
全体的なメッセージ

RabbitMQ クラスタから、以下のメッセージメトリクスが収集されます:

メトリック 説明
全体の公開 クラスタ全体で公開されたメッセージの数(5秒ごと)。
全体の配信 クラスタ全体で配信されたメッセージの数(5秒ごと)。
全体が確認済み クラスタ全体でクライアントに配信され、受信確認されたメッセージの数(5秒あたり)。
メッセージ全体のステータス

RabbitMQ クラスタから、以下のメッセージステータス指標が収集されます:

メトリック 説明
全体の準備完了 クラスタ全体でクライアントへの配信準備が整っているメッセージの数。
全体の未確認 クラスタ全体で、クライアントに配信されたものの、まだ確認応答が返されていないメッセージの数。
全体の合計 クラスタ全体のすべてのキューにあるメッセージの総数。
全体の作動可能率 クラスタ全体でクライアントに配信可能なメッセージの秒間数。
全体の未確認率 クライアントに配信されたものの、クラスタ全体でまだ確認応答が得られていないメッセージの秒間数。
全体の合計率 クラスタ全体のすべてのキューに含まれる、1秒あたりのメッセージ総数をカウントします。
概要

RabbitMQ クラスターからは、以下の概要メトリクスが収集されます:

メトリック 説明
コンシューマー クラスタ全体のユーザー数。
接続数 RabbitMQ クラスターへの現在の接続数。
クラスター・ノード

RabbitMQ クラスタから、以下のノードメトリクスが収集されます:

メトリック 説明
バージョン RabbitMQ ノードのバージョン。
使用されたファイル記述子数 使用中のファイル記述子の数。
使用メモリー 使用されているメモリーの量。
使用されたソケット数 ソケットとして使用されるファイル記述子の数。
Erlang プロセス数 使用中の Erlang プロセスの数。
空きディスク 未使用ディスク・スペースの量。
ディスク・アラームしきい値 アラームの起動を回避するために維持する必要がある未使用ディスク・スペースの量。