ApsaraMQ for RocketMQは、Application Real-Time Monitoring Service (ARMS) が提供するManaged Service for PrometheusおよびManaged Service for Grafanaと統合して、ダッシュボード機能を提供できます。 Managed Service for Prometheusはメトリクスの監視に使用され、Managed Service for Grafanaはメトリクスの保存と表示に使用されます。 ダッシュボード機能を使用すると、指標を監視し、指標データをオールインワンで包括的かつ多次元的に収集できます。 これにより、ビジネスステータスに関する情報を取得できます。 このトピックでは、ダッシュボード機能の課金および一般的なシナリオについて説明します。 このトピックでは、利用可能なダッシュボード指標とダッシュボード機能の使用方法についても説明します。
シナリオ
シナリオ1: オンラインメッセージの消費中に例外が発生した場合、アラートを受信し、問題をタイムリーに特定する必要があります。
シナリオ2: 特定のオンライン注文のステータスが異常な場合に、メッセージングシステムでメッセージが期待どおりに送信されるかどうかを確認する必要があります。
シナリオ3: メッセージトラフィックの変化傾向、トラフィック分布の特性、またはメッセージ量を分析して、ビジネストレンドを分析し、ビジネスプランを作成する必要があります。
シナリオ4: アプリケーションの上流および下流の依存関係トポロジを表示および分析して、アーキテクチャをアップグレード、最適化、または変換する必要があります。
前提条件
Prometheusのマネージドサービスが有効化されました。 詳しくは、「ARMS の有効化」をご参照ください。
サービスにリンクされたロールが作成されます。
ロール名: AliyunServiceRoleForOns
ロールポリシー名: AliyunServiceRolePolicyForOns
権限の説明: ApsaraMQ for RocketMQがCloudMonitorおよびARMSにアクセスするロールを引き受けて、モニタリング、アラート、およびダッシュボード機能を実装できるようにします。
詳細については、「サービスにリンクされたロール」をご参照ください。
課金
ApsaraMQ for RocketMQで使用されるダッシュボードメトリックは、Managed Service for Prometheusの基本メトリックです。 Managed Service for Prometheusの基本メトリックは課金されません。 したがって、ApsaraMQ for RocketMQのダッシュボード機能を無料で使用できます。
用語
ダッシュボード機能を使用する前に、メッセージの蓄積に関連する用語を理解する必要があります。 このセクションでは、用語について説明します。
次の図は、特定のトピックのキューにある各メッセージのステータスを示しています。
上の図では、ApsaraMQ for RocketMQが、さまざまな処理段階でのメッセージ数と処理時間を計算します。 このプロセスで使用されるメトリックは、キュー内の処理速度とメッセージの蓄積を反映します。 メトリクスを監視することで、消費中に例外が発生したかどうかを判断できます。 次の表に、メトリクスの詳細とメトリクスの計算に使用される数式を示します。
カテゴリ | メトリック | 定義 | 計算式 |
メッセージ量 | Inflightメッセージ | 消費者クライアントが処理中で、クライアントが消費結果を返していないメッセージ。 | 機内メッセージの数=最新のプルメッセージのオフセット-最新の確認済みメッセージのオフセット |
Readyメッセージ | コンシューマーに表示され、ApsaraMQ for RocketMQブローカーで使用できるようになったメッセージ。 | 準備完了メッセージ数=最大オフセット-最新のプルメッセージのオフセット | |
消費者の遅れ | 処理中で処理可能なメッセージの総数。 | コンシューマーラグ=機内メッセージの数 + 準備完了メッセージの数 | |
有効期間 | 準備時間 |
| 非該当 |
準備完了メッセージキュー時間 | 現在の時点と最も早い準備完了メッセージの準備完了時刻との間の間隔。 このメトリックは、コンシューマがメッセージをプルする時間を示します。 | Ready message queue time = Current time-最も早いReadyメッセージのready time | |
消費者のラグタイム | 最も早い未確認メッセージの準備時間と現在の時間の間の間隔。 このメトリックは、コンシューマがメッセージを処理する時間を示します。 | 消費者の遅れ時間=現在の時間-最も早い未確認メッセージの準備時間 |
メトリックの詳細
ApsaraMQ for RocketMQのダッシュボードには、次のカテゴリのメトリクスが表示されます。
Producer: 送信メッセージ数、メッセージ送信の成功率、送信期間など、特定のトピックまたはすべてのトピックのメッセージ生成統計を収集する指標を表示します。
Consumer: 特定のトピックからのメッセージ消費数、メッセージ消費の成功率、メッセージ累積など、特定のグループまたはすべてのグループのメッセージ消費統計を収集する指標を表示します。
インスタンスの上位20情報: 特定のインスタンスの一部のメトリックの上位20個の値と、各値が対応するトピックまたはグループを表示します。
課金メトリクスの概要: メッセージ送信TPS、メッセージ消費TPS、API呼び出し数、平均メッセージサイズなど、特定のインスタンスの課金統計を収集するメトリクスを表示します。 これらのメトリックを使用して、インスタンスの請求可能アイテムを推定できます。
ApsaraMQ for RocketMQは、各メトリックのデータを毎分収集します。 過去15日間に生成されたメッセージデータを照会できます。 クエリの最大時間範囲は24時間です。
プロデューサー
メトリック | 説明 |
送信メッセージレート | 特定のトピックまたはすべてのトピックにメッセージが送信される速度、およびメッセージを送信するためにAPI操作が呼び出される速度。 単位:
|
最大送信メッセージレート | メッセージが送信される最大レート。 単位: 1秒あたりのメッセージ。 |
合計送信メッセージ | 特定のインスタンスで送信されたメッセージの総数。 単位: メッセージ。 |
Send API call success rate | 特定のトピックまたはすべてのトピックにメッセージを送信するために開始された成功したAPI呼び出しの割合。 |
RTを送信 | トピックへのメッセージの送信に使用される時間。 単位:ミリ秒。 |
消費者
メトリック | 説明 |
平均消費成功率 | 特定のインスタンスで正常に消費されたメッセージの割合。 |
消費者の遅れ | 特定のインスタンスに蓄積されたメッセージの総数 (準備完了メッセージと機内メッセージを含む) 。 単位: メッセージ。 |
Inflightメッセージ | コンシューマークライアントで処理され、成功応答が返されないメッセージの数。 単位: メッセージ。 |
準備完了メッセージ | ApsaraMQ for RocketMQブローカーで使用できるメッセージの数。 このメトリックは、コンシューマーによって処理されていないメッセージの数を反映します。 単位: メッセージ。 |
準備完了メッセージキュー時間 | 現在の時点と、最も早いメッセージが準備できた時点との間の時間差。 このメトリックは、処理前の準備完了メッセージの遅延期間を反映します。 メトリックは、時間に敏感なワークロードにとって重要です。 概要情報のメトリック値は、特定のインスタンスの準備完了メッセージの平均キューイング時間を示します。 特定のチャートのメトリック値は、特定のグループがサブスクライブする特定のトピックの準備完了メッセージのキューイング時間を示します。 単位:ミリ秒。 |
受信メッセージ率 | 特定のグループまたはすべてのグループがメッセージを消費するレート。 単位: 1秒あたりのメッセージ。 |
最大受信メッセージレート | 特定のグループまたはすべてのグループがメッセージを消費する最大レート。 単位: 1秒あたりのメッセージ。 |
合計受信メッセージ | 特定のインスタンスで消費されたメッセージの総数。 単位: メッセージ。 |
消費者の遅れ | 特定のグループまたはすべてのグループ (レディメッセージと機内メッセージを含む) に蓄積されたメッセージの数。 単位: メッセージ。 |
メッセージ処理時間 | 特定のグループまたはすべてのグループのメッセージを消費するために使用される時間。 単位:ミリ秒。 |
Wait to process time | 消費者クライアントがメッセージを受信した後、メッセージが消費され始めるまでの時間。 単位:ミリ秒。 |
消費成功率 | 正常に消費されたメッセージの割合。 |
消費メッセージ各プロトコル | 各クライアントプロトコルの消費されたメッセージの割合。 |
インスタンストップ20情報
メトリック | 説明 |
トピックごとのメッセージ送信率 | メッセージ送信速度が最も高い上位20のトピック。 単位: 1秒あたりのメッセージ。 |
GroupIDごとの受信メッセージレート | メッセージ消費率が最も高い上位20グループ。 単位: 1秒あたりのメッセージ。 |
GroupIDごとの準備完了メッセージ | レディメッセージの数が最も多い上位20グループ。 単位: メッセージ。 |
GroupIDごとの準備完了メッセージキュー時間 | 準備完了メッセージのキューイング時間が最も長い上位20グループ。 単位:ミリ秒。 |
GroupIDごとの消費者ラグ | 蓄積されたメッセージの数が最も多い上位20のグループ。 単位: メッセージ。 |
GroupIDごとの機内メッセージ | 処理メッセージの数が最も多い上位20グループ。 単位: メッセージ。 |
GroupIDごとのメッセージ処理時間 | メッセージ消費期間が最も長い上位20グループ。 単位:ミリ秒。 |
GroupIDごとのメッセージ待機時間 | メッセージが消費されるまでの待ち時間が最も長い上位20グループ。 単位:ミリ秒。 |
トピックごとのAPI呼び出し失敗率の送信 | メッセージを送信するために開始されるAPI呼び出しの失敗率が最も高い上位20のトピック。 |
GroupIDごとの消費失敗率 | メッセージ消費の失敗率が最も高い上位20グループ。 |
課金メトリックの概要
次の表の課金メトリックの値は、大きなメッセージの倍数と事前機能のメッセージの倍数を使用して計算されます。
ラージメッセージ: ラージメッセージを送受信するために開始されるAPI呼び出しの数は、4 KBのメッセージサイズに基づいて計算されます。 たとえば、サイズが16 KBのメッセージを送信する場合、4つのAPI呼び出しがカウントされます。 API呼び出しの数は、次の式を使用して計算されます。16/4 = 4。
事前機能付きメッセージ: 事前機能付きメッセージを送受信するために開始されるAPI呼び出しの数は、通常のメッセージを送受信するために開始されるAPI呼び出しの数の5倍としてカウントされます。 事前機能付きメッセージには、順序付けられたメッセージ、スケジュールされたメッセージ、遅延メッセージ、およびトランザクションメッセージが含まれます。
メトリック | 説明 |
マックス送信TPS | メッセージを送信するための最大TPS。 このメトリックを使用して、インスタンスの請求可能アイテムのピークTPSを推定できます。 単位: TPS。 |
マックス受信TPS | メッセージを受信するための最大TPS。 このメトリックを使用して、インスタンスの請求可能アイテムのピークTPSを推定できます。 単位: TPS。 |
マックスTPS | メッセージを送信するためのTPSとメッセージを受信するためのTPSの最大合計。 このメトリックを使用して、インスタンスの請求可能アイテムのピークTPSを推定できます。 単位: TPS。 |
合計API呼び出し | API呼び出しの総数。 このメトリックを使用して、インスタンスの課金可能な項目内のAPI呼び出しの数を推定できます。 単位: calls。 |
平均メッセージサイズ | 送信されるすべてのメッセージの平均サイズ。 単位:バイト |
送受信TPS | メッセージを送信するためのTPSとメッセージを受信するためのTPSの合計。 単位: TPS。 |
1日あたりのAPI呼び出しの合計 | メッセージを送信するために開始されるAPI呼び出しの数と、メッセージを受信するために開始されるAPI呼び出しの数の合計。 単位: calls。 |
ダッシュボードを表示する
ApsaraMQ for RocketMQコンソールにログインします。 左側のナビゲーションウィンドウで、インスタンス数 をクリックします。
上部のナビゲーションバーで、中国 (杭州) などのリージョンを選択します。 [インスタンス] ページで、管理するインスタンスの名前をクリックします。
次のいずれかの方法を使用してダッシュボードを表示します。
インスタンスの詳細 ページで、ダッシュボード タブをクリックします。
[インスタンスの詳細] ページの左側のナビゲーションウィンドウで、ダッシュボード をクリックします。
[インスタンスの詳細] ページの左側のナビゲーションウィンドウで、トピックの管理 をクリックします。 表示されるページで、管理するトピックの名前をクリックします。 トピックの詳細 ページで、ダッシュボード タブをクリックします。
[インスタンスの詳細] ページの左側のナビゲーションウィンドウで、グループ管理 をクリックします。 表示されるページで、管理するグループの名前をクリックします。 グループ詳細 ページで、ダッシュボード タブをクリックします。
ダッシュボードに関するFAQ
ApsaraMQ for RocketMQのダッシュボードのメトリックデータを自己管理型Grafanaシステムにインポートするにはどうすればよいですか?
ApsaraMQ for RocketMQのダッシュボードにあるすべてのメトリックデータは、Alibaba Cloud Managed Service for Prometheusに保存されます。 Managed Service for Prometheusが提供するAPIを使用して、ApsaraMQ for RocketMQのダッシュボードのメトリックデータを自己管理型Grafanaシステムにインポートできます。
詳細については、「Managed Service For PrometheusからローカルGrafanaシステムへのデータのインポート」をご参照ください。
インスタンスの平均TPSと最大TPSはどのくらいですか?
平均TPS=1分あたりのAPI呼び出しの総数 /60
最大TPS: システムは1分サイクルに基づいて毎秒1つのTPS値を収集します。 60個の値のうちの最大値は、最大TPSとして知られている。
例:
ApsaraMQ for RocketMQインスタンスは、特定の1分間に60の通常のメッセージを生成します。 各メッセージのサイズが4 KBの場合、インスタンスのメッセージ作成率は1分あたり60メッセージです。 次のセクションでは、インスタンスの平均TPSと最大TPSを計算する方法について説明します。
平均TPS: 60/60 = 1
最高TPS:
最初の1秒間に60個のメッセージがすべて送信される場合、最初の1秒間のTPS値は60であり、他の59秒間のTPS値はすべて0である。
この場合、インスタンスの最大TPSは60です。
最初の1秒間に40個のメッセージが送信され、2秒間に20個のメッセージが送信される場合、最初の1秒間のTPS値は40であり、2秒間のTPS値は20であり、他の58秒間のTPS値は全て0である。
この場合、インスタンスの最大TPSは40です。