• ログイン今すぐ開始

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

RabbitMQモニタリング統合

New Relic RabbitMQオンホスト統合は、クラスター、vhost、キュー、エクスチェンジ、コンシューマーに関連する重要なメトリックを含む、RabbitMQサービスからのメトリックと構成データをレポートします。

EOL通知

2022年4月をもって、 RabbitMQClusterエンティティを含むいくつかの機能のサポートを終了します。この移行に簡単に備える方法など、詳細については、 ExplorersHubの投稿をご覧ください。

互換性と要件

私たちの統合は以下と互換性があります:

  • メトリックデータ用のRabbitMQバージョン3.0以降。
  • インベントリデータ用のRabbitMQバージョン3.7以降。

統合をインストールする前に、次の要件を満たしていることを確認してください。

インストールしてアクティブ化する

RabbitMQ統合をインストールするには、ご使用の環境の指示に従ってください。

''

その他の注意事項:

重要

この統合では、ホストごとに1つのRabbitMQサーバーインスタンスのみを監視できます。

統合を構成する

統合のYAML形式の構成では、必要なログイン資格情報を配置し、データの収集方法を構成できます。どのオプションを変更するかは、セットアップと設定によって異なります。

インストール方法に応じて、統合を構成する方法はいくつかあります。

構成例については、構成ファイルの例を参照してください。

構成ファイルには、 intervaltimeoutinventory_sourceなどのすべての統合に適用できる共通の設定があります。これらの一般的な設定についてすべて読むには、 構成フォーマットのドキュメントを参照してください。

重要

レガシー構成/定義ファイルをまだ使用している場合は、このドキュメントを参照してください。

RabbitMQに関連する特定の設定は、構成ファイルのenvセクションを使用して定義されます。これらの設定は、RabbitMQインスタンスへの接続、およびその他のセキュリティ設定と機能を制御します。有効な設定のリストについては、このドキュメントの次のセクションで説明します。

クラスター環境

クラスタ環境では、1つのノードのみがMETRICS=falseINVENTORY=falseを使用する必要があります。残りはINVENTORY=trueMETRICS=falseを使用する必要があります。これらの詳細については、インスタンス設定を参照してください。

Kubernetesでクラスター環境を実行している場合は、RabbitMQをStatefulSetとしてデプロイし、RabbitMQポッドからすべてのメトリックをクエリするようにエージェントを構成する必要があります。構成ファイルの自動検出一致条件を次の値に設定します。

discovery:
command:
exec: /var/db/newrelic-infra/nri-discovery-kubernetes
match:
podName: rabbitmq-0

RabbitMQインスタンス設定

RabbitMQ統合は、Metrics( M )とInventory( I )の両方の情報を収集します。以下の[適用先]列をチェックして、特定のコレクションごとに使用できる設定を見つけてください。

'' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ''

設定

説明

デフォルト

に適用されます

ホスト名

RabbitMQ管理プラグインのホスト名またはIP。

ローカルホスト

M / I

ポート

RabbitMQ管理プラグインのポート番号。

15672

M / I

ユーザー名

RabbitMQ管理プラグインに接続しているユーザー。

該当なし

M / I

パスワード

RabbitMQ管理プラグインに接続するためのパスワード。

該当なし

M / I

MANAGEMENT_PATH_PREFIX

RabbitMQ管理プレフィックス。

該当なし

M / I

USE_SSL

SSLを使用して接続するオプション。

false

M / I

CA_BUNDLE_DIR

ホスト上のSSL証明書の場所。

該当なし

M / I

CA_BUNDLE_FILE

ホスト上のSSL証明書の場所。

該当なし

M / I

NODE_NAME_OVERRIDE

RabbitMQから取得する代わりに、ローカルノード名をオーバーライドします。

該当なし

M / I

CONFIG_PATH

RabbitMQ構成ファイルへの絶対パス。

該当なし

M / I

キュー

文字列のJSON配列の形式で収集するキュー名。キュー名がこれらのいずれかと完全に一致する場合(大文字と小文字が区別されます)、キュー名が収集されます。

例:

queues: '["myQueue1","myQueue2"]'

該当なし

QUEUES_REGEXES

REGEX文字列のJSON配列の形式で収集するキュー名。キュー名がこれらのいずれかに一致する場合、それが収集されます。

例:

queues_regexes: '["queue[0-9]+",".*"]'

該当なし

M / I

交換

文字列のJSON配列の形式で収集する名前を交換します。交換名がこれらのいずれかと完全に一致する場合(大文字と小文字が区別されます)、それが収集されます。

該当なし

M / I

EXCHANGES_REGEXES

名前を交換して、REGEX文字列のJSON配列の形式で収集します。交換名がこれらのいずれかに一致する場合、それが収集されます。

該当なし

M / I

VHOSTS

文字列のJSON配列の形式で収集する仮想ホスト名。 vhost名がこれらの1つと完全に一致する場合(大文字と小文字が区別されます)、それが含まれます。これは、指定されたvhostsに属するエンティティの収集にも影響します。

該当なし

M / I

VHOSTS_REGEXES

REGEX文字列のJSON配列の形式で収集する仮想ホスト名。 vhost名がこれらのいずれかに一致する場合、vhostとこのvhostに属するエンティティが収集されます。

該当なし

M / I

METRICS

メトリックのみの収集を有効にするには、 trueに設定します。

false

在庫

インベントリのみの収集を有効にするには、 trueに設定します。

false

イベント

イベントのみの収集を有効にするには、 trueに設定します。

false

これらの設定の値は、いくつかの方法で定義できます。

  • 設定ファイルに直接値を追加します。これが最も一般的な方法です。
  • {{}}表記を使用して環境変数の値を置き換えます。これには、インフラストラクチャエージェントv1.14.0以降が必要です。詳細はこちらをご覧ください
  • シークレット管理の使用。これを使用して、構成ファイルにプレーンテキストで公開されるパスワードなどの機密情報を保護します。詳細については、シークレット管理を参照してください。

ラベル/カスタム属性

環境変数を使用して、ライセンスキーなどの構成設定を制御し、インフラストラクチャエージェントに渡すことができます。この機能の使用方法については、インフラストラクチャエージェントの構成を参照してください。ラベルを使用して、メトリックをさらに装飾できます。ラベルを使用すると、キーと値のペアの属性をメトリックに追加して、メトリックのクエリ、フィルタリング、またはグループ化に使用できます。
デフォルトのサンプル構成ファイルにはラベルの例が含まれていますが、必須ではないため、選択した新しいラベルを削除、変更、または追加できます。

labels:
env: production
role: rabbitmq

構成例

構成ファイルの例を次に示します。

オンホスト統合構成の一般的な構造の詳細については、「 構成」を参照してください。

データを見つけて使用する

このサービスからのデータは、 統合ダッシュボードに報告されます。

メトリックは、これらのイベントタイプに関連付けられています。

トラブルシューティングの目的で、またはカスタムチャートとダッシュボードを作成するために、このデータをクエリできます。

データを検索して使用する方法の詳細については、統合データについてを参照してください。

メトリックデータ

RabbitMQ統合は、次のメトリックデータ属性を収集します。各メトリック名には、カテゴリインジケータとキューなどのピリオドがプレフィックスとして付けられます。またはノード。

RabbitMQvhostサンプルイベント

これらの属性は、 RabbitmqVhostSampleイベントタイプに関連付けられています。

名前

説明

vhost.connectionsBlocked

ブロックされた状態の現在の接続の数。

vhost.connectionsBlocking

状態がブロックされている現在の接続の数。

vhost.connectionsClosed

閉じた状態の現在の接続の数。

vhost.connectionsClosing

閉じている状態の現在の接続の数。

vhost.connectionsFlow

ステートフロー内の現在の接続の数。

vhost.connectionsOpening

状態が開いている現在の接続の数。

vhost.connectionsRunning

実行中の状態の現在の接続の数。

vhost.connectionsStarting

開始状態の現在の接続の数。

vhost.connectionsTotal

特定のrabbitmq仮想ホストへの現在の接続の数。

vhost.connectionsTuning

状態調整中の現在の接続の数。

RabbitMQノードのサンプルイベント

これらの属性は、 RabbitmqNodeSampleイベントタイプに関連付けられています。

名前

説明

node.averageErlangProcessesWaiting

実行を待機しているErlangプロセスの平均数。 RabbitMQでは、これはrun_queueと見なされます。

node.diskAlarm

ノードディスクアラーム(0または1)。 0はアラームが作動していないことを示し、1はアラームが作動していることを示します。 RabbitMQでは、これはdisk_free_alarmと見なされます。

node.diskSpaceFreeInBytes

現在の空きディスク容量(バイト単位)。 RabbitMQでは、これはdisk_freeと見なされます。

node.fileDescriptorsTotal

ファイル記述子の総数。 RabbitMQでは、これはfd_totalと見なされます。

node.fileDescriptorsTotalUsed

使用されたファイル記述子の総数。 RabbitMQでは、これはfd_usedと見なされます。

node.fileDescriptorsUsedSockets

ソケットとして使用されるファイル記述子の数。 RabbitMQでは、これはsockets_usedと見なされます。

node.fileDescriptorsTotalSockets

ソケットとして使用可能なファイル記述子の総数。 RabbitMQでは、これはsockets_totalと見なされます。

node.hostMemoryAlarm

ホストメモリアラーム(0または1)。 0はアラームが作動していないことを示し、1はアラームが作動していることを示します。 RabbitMQでは、これはmem_alarmと見なされます。

node.totalMemoryUsedInBytes

バイト単位で使用されるメモリ。 RabbitMQでは、これはmem_usedと見なされます。

node.partitionsSeen

ノードごとに見られるネットワークパーティションの数。 RabbitMQでは、これはpartitionsと見なされます。

node.processesTotal

Erlangプロセスの制限。 RabbitMQでは、これはproc_totalと見なされます。

node.processesUsed

使用されるErlangプロセス。 RabbitMQでは、これはproc_usedと見なされます。

node.running

実行中のノード(0または1)。 0はノードが実行されていないことを示し、1はノードが実行されていることを示します。 RabbitMQでは、これはrunningと見なされます。

RabbitMQ交換サンプルイベント

これらの属性は、 RabbitmqExchangeSampleイベントタイプに関連付けられています。

名前

説明

exchange.bindings

特定の交換のバインディングの数。

exchange.messagesPublishedPerChannel

チャネルからこの交換に公開されたメッセージの数。 RabbitMQでは、これはmessage_stats.publish_inと見なされます。

exchange.messagesPublishedPerChannelPerSecond

チャネルからこの交換に公開されたメッセージの1秒あたりのレート。 RabbitMQでは、これはmessage_stats.publish_in_details.rateと見なされます。

exchange.messagesPublishedQueue

この交換からキューに公開されたメッセージの数。 RabbitMQでは、これはmessage_stats.publish_outと見なされます。

exchange.messagesPublishedQueuePerSecond

この交換から1秒あたりのキューに公開されたメッセージのレート。 RabbitMQでは、これはmessage_stats.publish_out_details.rateと見なされます。

RabbitMQキューのサンプルイベント

これらの属性は、 RabbitmqQueueSampleイベントタイプに関連付けられています。

名前

説明

queue.bindings

特定のキューのバインディングの数。

queue.countActiveConsumersReceiveMessages

キューに送信されたメッセージをすぐに受信できるアクティブなコンシューマーの数。 RabbitMQでは、これはactive_consumersと見なされます。

queue.consumers

キューごとのコンシューマーの数。 RabbitMQでは、これはコンシューマーと見なされます。

queue.consumerMessageUtilizationPerSecond

キューのコンシューマーが新しいメッセージを受け取ることができる時間の比率(1秒あたりの使用率)。 RabbitMQでは、これはconsumer_utilisationと見なされます。

このメトリックは、RabbitMQバージョン3.3以降でのみ使用できます。

queue.erlangBytesConsumedInBytes

キューに関連付けられたErlangプロセスによって消費されたバイト。 RabbitMQでは、これはmemoryと見なされます。

queue.messagesReadyDeliveryClients

クライアントに配信する準備ができているメッセージの数。 RabbitMQでは、これはmessage_stats.messages_readyと見なされます。

queue.messagesReadyDeliveryClientsPerSecond

1秒あたりにクライアントに配信する準備ができているメッセージの割合。 RabbitMQでは、これはmessage_stats.messages_ready_details.rateと見なされます。

queue.messagesReadyUnacknowledged

クライアントに配信されたがまだ確認されていないキューごとのメッセージの数。 RabbitMQでは、これはmessage_stats.deliver_no_ackと見なされます。

queue.messagesReadyUnacknowledgedPerSecond

クライアントに配信されたが、1秒あたりにまだ確認されていないキューあたりのメッセージの割合。 RabbitMQでは、これはmessage_stats .deliver_no_ack_details.rateとして表示されます。

queue.messagesAcknowledged

クライアントに配信され、キューごとに確認されたメッセージの数。 RabbitMQでは、これはmessage_stats.ackと見なされます。

queue.messagesAcknowledgedPerSecond

クライアントに配信され、キューごとに1秒あたりに確認応答されたメッセージのレート。 RabbitMQでは、これはmessage_stats.ack_details.rateと見なされます。

queue.messagesDeliveredAckMode

キューごとに確認モードでコンシューマーに配信されたメッセージの数。 RabbitMQでは、これはmessage_stats.deliverと見なされます。

queue.messagesDeliveredAckModePerSecond

確認応答モードでコンシューマーに配信されるメッセージの1秒あたりのキューあたりの割合。 RabbitMQでは、これはmessage_stats .deliver_details.rateとして表示されます。

queue.messagesPublished

キューごとに公開されたメッセージの数。 RabbitMQでは、これはmessage_stats.publishと見なされます。

queue.messagesPublishedPerSecond

キューごとに1秒あたりに発行されるメッセージの割合。 RabbitMQでは、これはmessage_stats.publish_details.rateと見なされます。

queue.messagesRedeliverGet

キューごとに再配信フラグが設定された確認応答モードのメッセージのサブセットの数。 RabbitMQでは、これはmessage_stats.redeliverと見なされます。

queue.messagesRedeliverGetPerSecond

1秒あたりのキューごとに再配信フラグが設定された確認応答モードのメッセージのサブセットのレート。 RabbitMQでは、これはmessage_stats.redeliver_details.rateと見なされます。

queue.sumMessagesDelivered

コンシューマーへの確認応答モード、コンシューマーへの非確認応答モード、basic.getに応答する確認応答モード、およびbasic.getに応答する非確認応答モードで配信されたメッセージの合計。キューごと。 RabbitMQでは、これはmessage_stats.deliver_getと見なされます。

queue.sumMessagesDeliveredPerSecond

消費者への確認応答モード、消費者への非確認応答モード、basic.getに応答する確認応答モード、およびキューごとのbasic.getに応答する非確認応答モードで配信されるメッセージの合計の1秒あたりのレート。 RabbitMQでは、これはmessage_stats.deliver_get_details.rateと見なされます。

queue.totalMessages

キュー内のメッセージの総数。 RabbitMQでは、これはmessagesと見なされます。

queue.totalMessagesPerSecond

キュー内の合計メッセージの割合。 RabbitMQでは、これはmessages_details.rateと見なされます。

システムメタデータ

その他のメタデータは次のとおりです。

名前

説明

version.rabbitmq

RabbitMQサーバーのバージョン。例:3.6.7。

version.management

RabbitMQ管理プラグインのバージョン。例:3.6.7。

在庫データ

統合により、RabbitMQの構成パラメーターが/etc/rabbitmq/rabbitmq.confファイルに取り込まれます。インベントリデータは、 RabbitMQバージョン3.7以降でのみキャプチャされます。 インベントリデータは、[インフラストラクチャインベントリ]ページconfig/rabbitmqソースの下に表示されます。

注意

rabbit.confファイルに入力した機密情報は、[インフラストラクチャインベントリ]ページに表示されることに注意してください。これには、AWSからの次のようなアイテムが含まれます。

cluster_formation.aws.secret_key,
cluster_formation.aws.access_key_id

トラブルシューティング

トラブルシューティングのヒント:

ソースコードを確認してください

この統合はオープンソースソフトウェアです。つまり、ソースコードを参照して改善を送信したり、独自のフォークを作成してビルドしたりできます。

Copyright © 2022 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.