Application Real-Time Monitoring Service (ARMS) では、単一のフィールドまたは単一のクエリステートメントの結果をドリルダウンして、データの詳細な分析を行うことができます。トレースの1つ以上の属性にインタラクションイベントを設定できます。これにより、トレースに関する詳細をクエリしたり、トレースに関連するログやメトリックを表示したりできます。このトピックでは、インタラクションイベントを設定する方法について説明します。
インタラクションイベントは、データ分析にとって重要です。インタラクションイベントを使用して、ディメンションまたは粒度を切り替えて、より詳細な情報を取得できます。トレースエクスプローラーでは、スパンのフィールドと属性にインタラクションイベントを設定できます。次のイベントタイプが提供されています。
ログライブラリを開く:指定されたSimple Log Service(SLS)ログストアにリダイレクトします。
HTTPリンクをカスタマイズする:指定されたHTTP URLにリダイレクトします。
編集ボックスから開く:フィールド値をテキストまたはJSON形式でポップアップウィンドウに表示します。
クイック検索を開く:SLS保存済み検索にリダイレクトします。
カスタムインタラクションイベントを設定する
トレースエクスプローラーページで、トレースIDをクリックします。
インターフェースをクリックし、スパンの詳細セクションでイベント設定をクリックします。
ドリルダウン設定パネルで、インタラクションイベントの有効モードを選択します。
カスタムインタラクションイベントは、サービスイベント設定とグローバルイベント設定の2つのモードで有効になります。「サービスイベント設定」モードは、イベントが現在のアプリケーションのすべてのトレースでのみ有効になることを指定します。一方、「グローバルイベント設定」モードは、イベントが現在のリージョンのすべてのトレースで有効になることを指定します。
フィールドを追加をクリックし、フィールドを選択してOKをクリックします。
イベントを追加をクリックし、ドロップダウンリストからインタラクションイベントを選択します。
イベントのパラメーターを設定し、OKをクリックします。
パラメーターの詳細については、インタラクションイベントパラメーターセクションを参照してください。
カスタムインタラクションイベントをトリガーする
スパンの詳細セクションで、ポインターを青いフィールドの上に移動します。ツールチップに、フィールドに設定されているカスタムインタラクションイベントが表示されます。イベント名をクリックして、イベントをトリガーします。
インタラクションイベントパラメーター
ログライブラリを開く
ログライブラリを開くイベントがトリガーされると、ページは指定されたログストアにリダイレクトされます。
前提条件
ログストアが作成されていること。詳細については、ログストアの管理を参照してください。
パラメーター
パラメーター
必須
説明
カスタム名
はい
カスタムインタラクションイベントの名前を入力します。名前はツールチップに表示されます。
リージョンを選択してください
はい
SLSプロジェクトが存在するリージョンを選択します。
プロジェクトを選択してください
はい
SLSプロジェクトの名前を選択します。
ログリポジトリを選択してください
はい
SLSログストアの名前を選択します。イベントがトリガーされると、ページはログストアにリダイレクトされます。
新しいウィンドウを開く
いいえ
イベントがトリガーされたときに、ログストアをポップアップウィンドウで開くかどうかを指定します。
時間範囲
いいえ
ログストアでクエリするデータの時間範囲を選択します。有効な値:
デフォルト:デフォルトの時間範囲が使用されます。これは15分(相対)です。
クエリ時間を使用:イベントがトリガーされたときにトレースエクスプローラーで指定された時間範囲が使用されます。
データポイント時間:時間範囲の開始時間は、時間範囲フィールドパラメーターの値から時間範囲フィールド差パラメーターの値を引いた値です。時間範囲の終了時間は、時間範囲フィールドパラメーターの値に時間範囲フィールド差パラメーターの値を加えた値です。
相対時間範囲:指定された相対時間範囲が使用されます。
時間枠:指定された時間枠内の時間ごとのポイントが使用されます。
フィルターステートメント
いいえ
フィルターステートメントを入力してログストアに同期し、
AND
演算子を使用してクエリステートメントの前に追加します。変数を追加をクリックして、フィールドを変数としてフィルターステートメントに追加し、フィールド値をフィルター条件として使用します。
例:
traceId=${{traceID}} AND spanId=${{spanID}}
HTTPリンクをカスタマイズする
HTTPリンクをカスタマイズするイベントがトリガーされると、ページは指定されたHTTP URLにリダイレクトされます。
前提条件
HTTP URLが使用可能であること。
パラメーター
パラメーター
必須
説明
カスタム名
はい
カスタムインタラクションイベントの名前を入力します。名前はツールチップに表示されます。
プロトコル
はい
HTTP URLのプロトコルを選択します。
リンクアドレス
はい
HTTP URLを入力します。
HTTP URLのパスは、ターゲットファイルへの階層パスを表します。変数を追加をクリックして、パスに変数としてフィールドを追加できます。URLをクリックすると、対応するフィールド値がURLのパラメーターを置き換え、再配置されたHTTP URLにリダイレクトされます。
トランスコードするかどうか
いいえ
HTTP URLをエンコードするかどうかを指定します。
新しいウィンドウを開く
いいえ
イベントがトリガーされたときに、ポップアップウィンドウでHTTP URLに移動するかどうかを指定します。
編集ボックスから開く
編集ボックスから開くインタラクションイベントがトリガーされると、フィールド値がテキストまたはJSON形式でポップアップウィンドウに表示されます。
パラメーター | 必須 | 説明 |
カスタム名 | はい | カスタムインタラクションイベントの名前を入力します。名前はツールチップに表示されます。 |
テキストタイプ | いいえ | フィールド値を表示する形式を選択します。有効な値:textとJSON。 |
クイック検索を開く
クイック検索を開くイベントがトリガーされると、ページはSLS保存済み検索にリダイレクトされます。
前提条件
SLSに保存済み検索が作成されていること。詳細については、保存済み検索を参照してください。
インタラクションイベントに変数を設定する場合、変数が保存済み検索のクエリステートメントで設定されていることを確認してください。詳細については、変数を使用してクエリステートメントのパラメーターを動的に変更するを参照してください。
パラメーター
パラメーター
必須
説明
カスタム名
はい
カスタムインタラクションイベントの名前を入力します。名前はツールチップに表示されます。
リージョンを選択してください
はい
SLSプロジェクトが存在するリージョンを選択します。
プロジェクトを選択してください
はい
SLSプロジェクトの名前を選択します。
クイック検索を選択してください
はい
保存済み検索を選択します。イベントがトリガーされると、ページは保存済み検索にリダイレクトされます。
新しいウィンドウを開く
いいえ
イベントがトリガーされたときに、保存済み検索をポップアップウィンドウで開くかどうかを指定します。
時間範囲
いいえ
保存済み検索のクエリ対象の時間範囲を選択します。有効な値:
デフォルト:デフォルトの時間範囲が使用されます。これは15分(相対)です。
クエリ時間を使用:イベントがトリガーされたときにトレースエクスプローラーで指定された時間範囲が使用されます。
データポイント時間:時間範囲の開始時間は、時間範囲フィールドパラメーターの値から時間範囲フィールド差パラメーターの値を引いた値です。時間範囲の終了時間は、時間範囲フィールドパラメーターの値に時間範囲フィールド差パラメーターの値を加えた値です。
相対時間範囲:指定された相対時間範囲が使用されます。
相対時間範囲:指定された相対時間範囲が使用されます。
フィルターステートメント
いいえ
フィルターステートメントを入力してログストアに同期し、
AND
演算子を使用してクエリステートメントの前に追加します。変数を追加をクリックして、フィールドを変数としてフィルターステートメントに追加し、フィールド値をフィルター条件として使用します。
動的変数
いいえ
SLSでは、変数を使用して保存済み検索のクエリステートメントを変更できます。ここで指定する変数がクエリステートメントで指定された変数と同じ場合、ここで指定した変数が優先されます。
説明最大5つの動的変数と5つの静的変数を追加できます。
動的変数
変数:変数の名前。
変数値列:変数値が配置されている列。値は、保存済み検索の変数を動的に置き換えるために使用されます。
静的変数
変数:変数の名前。
値:静的変数の値。保存済み検索のプレースホルダー変数を置き換えるために使用されます。
静的変数
いいえ
プリセットインタラクションイベント(詳細設定)
トレースエクスプローラーは、プリセットインタラクションイベントを提供します。次の表に、イベントを示します。
イベント | 有効フィールド | 説明 |
現在の条件を使用してトレースをクエリする | スパンイベント以外すべて | フィールドをクエリ条件として追加します。 |
アプリケーションの詳細を表示 | serviceName | アプリケーション詳細ページのアプリケーション概要タブにリダイレクトします。 |
提供されているサービスを表示 | spanName | アプリケーション詳細ページの提供サービスタブにリダイレクトします。 |
インスタンス監視の詳細を表示 | IP | アプリケーション詳細ページのインスタンス監視タブにリダイレクトします。 |
生のトレースデータを表示 | TraceIDとSpanId | SLSに保存されている生のトレースデータを表示します。 |
使用上の注意
仮想ドメイン名(たとえば、ARMSコンソールページを自己管理型Webアプリケーションに埋め込む)を使用してトレースエクスプローラーページにアクセスする場合、ログライブラリを開くまたはクイック検索を開くイベントをトリガーした後、SLSコンソールにアクセスできるのではなく、SLSログオンページにリダイレクトされます。仮想ドメイン名を使用していない場合は、HTTPリンクをカスタマイズするイベントを使用して2つのリダイレクトを設定できます。次の手順を実行します。
HTTPリンクをカスタマイズするイベントを設定します。
HTTPSプロトコルを選択し、リンクアドレスフィールドにSLSコンソールページのURLを入力します。
URLのドメイン名sls.console.aliyun.comを、SLSの仮想ドメイン名であるsls4service.console.aliyun.comに置き換えます。詳細については、コンソールページを埋め込み、ログデータを共有するを参照してください。
ログストアにアクセスするときにクエリパラメーターを付加する場合は、変数を追加をクリックして変数として追加します。
次のURLは、プロジェクトがtest-projectであるtest-logstoreという名前のログストアを開き、現在のトレースを検索します。
https://sls.console.aliyun.com/lognext/project/test-project/logsearch/test-logstore?queryString=traceId=${{traceID}}