このトピックでは、ログ管理を使用して秒間メトリクスを生成する方法について説明します。
背景情報
Cloud Monitor のチャートは分単位の平均値を表示するため、秒間 TPS データを表示できません。ApsaraMQ for RabbitMQ における TPS とは、クライアントが 1 秒間に開始する AMQP メソッドリクエストの数を指します。
TPS の計算には、以下の AMQP メソッドが含まれます。
-
ConnectionOpen、ChannelOpen
-
QueueDeclare、QueueDelete、QueueBind、QueueUnbind
-
ExchangeDeclare、ExchangeDelete
-
ExchangeBind、ExchangeUnBind
-
SendMessage、BasicConsume、BasicGet、BasicAck、BasicReject、BasicNack、BasicRecover
リクエストメソッドの詳細については、「リクエストメソッド」をご参照ください。
操作手順
-
Metricstore を作成して、クリーンアップ済みのメトリクスデータを保存します。
-
Simple Log Service コンソール のプロジェクト詳細ページで、 をクリックします。空の状態では、ページに 現在のプロジェクトには Metricstore がありません と表示されます。
-
Create Metricstore パネルで、Metricstore の基本情報を設定します。主なパラメーターは、名前(Metricstore 名)および データ保持期間(デフォルトは 30 日)です。
-
-
データ変換ジョブを作成します。
-
Logstore でクエリ文を入力します。ここでは、インスタンスのエラーコードをクエリする例を示します。
* | SELECT Code, count(*) as num, microtime / 1000 / 1000 as timeSecond group by Code, timeSecond limit 1000000文の形式は次のとおりです:
検索文 | 分析文。検索文でデータをフィルターし、分析文は標準的な SQL クエリです。Metricstore へのデータ書き込みには、クエリ結果から次の 3 つのコンポーネントを抽出する必要があります:必須ラベル、各ラベルに対応するメトリクス値、タイムスタンプ。この例では、Codeがエラーコードのラベル、numが各コードのメトリクス値、timeSecondが秒単位のタイムスタンプです。クエリ結果は、Code(エラーコード)、num(件数)、timeSecond(秒単位のタイムスタンプ)の 3 列からなるテーブルとして返されます。
-
クエリ結果で [グラフ] タブをクリックし、次に [スケジュールされた SQL ジョブとして保存] をクリックします。[計算設定] タブでパラメーターを設定し、次へ をクリックします。SQL タイプ には 検索 & 分析 を選択します。書き込みモード には 新規データのインポート を選択します。SQL クエリ内のフィールドに基づいて、書き込みカラムマッピング を設定します。
説明送信先ストアは、前のステップで作成した Metricstore である必要があります。
-
[スケジューリング設定] タブでスケジューリング間隔を設定し、OK をクリックします。スケジューリング間隔 は、1 時間ごとまたはカスタム間隔に設定できます。SQL タイムアウト のデフォルト値は 600 秒、実行遅延 のデフォルト値は 60 秒です。
-
-
Metricstore 内のメトリクス値ディストリビューションをクエリします。左側のナビゲーションウィンドウで送信先の Metricstore を選択し、クエリページに移動してクエリを実行します。
クエリ結果のサンプルは次のとおりです:

-
オプション: Metricstore 内のデータを可視化ダッシュボードに接続します。Grafana または Simple Log Service の可視化機能を使用できます。
-
Grafana ダッシュボードに接続する方法については、「時系列データを Grafana に接続」をご参照ください。
-
Simple Log Service の可視化ダッシュボード機能を使用する方法については、「可視化」をご参照ください。
-
上記のチュートリアルでは、インスタンスのエラーコードデータを例として使用しています。その他のデータタイプ(たとえば、各 RemoteAddress の各チャンネルにおけるメッセージ送受信レート、各キューの秒間アクティビティ、1 秒あたりのメッセージ送受信総数、各 API の秒間呼び出し回数など)もクリーンアップできます。