コレクターが稼働してデータが流入すると、New RelicでIBM MQメトリクスを表示し、NRQLでクエリを実行し、ダッシュボードを構築して、アラートを設定できます。各キューマネージャーは、そのキューを子IBMMQ_QUEUEエンティティとして持つIBMMQ_MANAGERエンティティ(target.name:qmgrとしてキー設定)として表示されます。
New RelicでIBM MQデータの表示
数分後、IBM MQメトリクスがNew Relicに表示されます。パイプラインは生のPrometheusの形状 — アンダースコアのメトリクス名(ibmmq_*)と生のqmgrおよびqueueラベル — を保持し、すべてのメトリクスにtarget.nameのIDを付与します。New Relicはこれを使用してエンティティを合成します。
データの可視性に関する問題をトラブルシューティングするには、トラブルシューティングのドキュメントを参照してください。
NRQLでデータをクエリする
ヒント
アンダースコアの名前と生のラベルでメトリクスをクエリします — ibmmq_qmgr_status、ibmmq_queue_depth、qmgr、queue。メトリクス名はドット区切りではなく、qmgrラベルの名前は変更されないため、ibmmq.*またはibmmq.queue_manager.nameに対して記述されたNRQLは一致しません。
使用事例 | クエリ |
|---|---|
すべてのIBM MQメトリクスにデータが送信されていることを確認するには | |
レポートしているキューマネージャーをカウントするには(それぞれが1つの
エンティティになります) | |
キューマネージャーのステータス(
\=実行中)を表示します(キューマネージャーごとに1行)。 | |
チャネルのステータス(
\=実行中)を表示します。 | |
モニター対象のすべてのキューの現在の深度を表示します。 | |
フリート全体のデッドレターキューの深度を共通の集計シグナルとして表示します。 | |
キューのスループット、1分あたりのputおよびgetを表示するには。これにはMQI統計が有効になっている必要があります | |
エンティティを直接参照するには、New Relic UIのAll entitiesに移動してIBMMQ_MANAGERおよびIBMMQ_QUEUEエンティティをフィルタリングするか、上記のいずれかのクエリからキューマネージャーを開きます。
カスタムダッシュボードを作成する
独自のIBM MQダッシュボードを構築するには:
one.newrelic.com > Dashboardsに移動し、 Create a dashboardをクリックします。
ウィジェットを追加し、Add a chartを選択して、上記のNRQLクエリのいずれかを貼り付けます。
一目でわかるように、フォーカスエリアごとにウィジェットをグループ化します:
- キューマネージャーのヘルス —
ibmmq_qmgr_status、ibmmq_qmgr_connection_count、ibmmq_channel_status - キュー深度とバックログ —
ibmmq_queue_depth、ibmmq_queue_oldest_message_age、ibmmq_queue_uncommitted_messages - スループット —
ibmmq_queue_mqput_count、ibmmq_queue_mqget_count(レートとしてグラフ化) - キャパシティ —
ibmmq_qmgr_log_in_use_bytes、ibmmq_qmgr_queue_manager_file_system_in_use_bytes
- キューマネージャーのヘルス —
アラートの設定
メッセージングに依存するアプリケーションに影響が及ぶ前に問題を検出するには、ibmmq_*メトリクスに対してNRQLアラート条件を作成します。
以下の表は、推奨されるIBM MQのアラート条件を示しています:
集計 | NRQLクエリ | 推奨閾値 |
|---|---|---|
キューマネージャーが実行されていません | | 値が少なくとも2分間
と等しくない場合、クリティカルになります。 |
チャネルが実行されていない | | 少なくとも5分間、値が
と等しくない場合はクリティカルになります。 |
キューが最大値に近づいています | |
で警告、
でクリティカルになります。 |
デッドレター・キューのメッセージ | | 値が
より大きい場合、クリティカルになります。 |