すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:グラフまたはダッシュボードでのデータのフィルタリング

最終更新日:Jan 13, 2025

クエリステートメントの変数は、クエリステートメントのパラメーターを動的に変更するために使用できる {{変数名 | デフォルト値}} 形式のプレースホルダーです。 クエリステートメントの変数を指定して、クエリステートメントを変更する必要なく、グラフまたはダッシュボード上のデータをフィルタリングできます。 このトピックでは、グラフまたはダッシュボードのデータをフィルタリングする方法について説明します。

ダッシュボードのデータをフィルタリングするフィルターの追加

フィルタータイプ

各グラフには、クエリステートメントのクエリ結果と分析結果が表示されます。 フィルターを追加して検索条件を変更したり、ダッシュボード上のすべてのグラフのプレースホルダー変数を置き換えて、ダッシュボード上のデータをフィルター処理することができます。 Simple Log Serviceは、次のタイプのフィルターを提供します。

  • フィルタータイプのフィルター: このタイプのフィルターは、ログフィールドのキーと値のペアをフィルター条件として使用します。 filter型のフィルターは、指定されたクエリ文の結果を検索して、指定されたキーと値のペアを含むログまたは含まないログを探します。 たとえば、動的リスト項目を使用して、各リクエストメソッドのページビュー (PV) の数を照会するフィルタータイプのフィルターを追加できます。

  • 変数置換タイプのフィルタ: このタイプのフィルタは、変数をフィルタ条件として使用します。 変数置換タイプのフィルターを追加する前に、ダッシュボードの関連チャートのクエリステートメントに変数を指定する必要があります。 フィルターを追加すると、グラフのクエリステートメントの変数が、変数に指定した値に置き換えられます。 たとえば、10秒、60秒、または600秒あたりのPVの数を照会できます。

  • メトリックフィルタタイプのフィルタ: このタイプのフィルタは、フィルタ条件としてメトリックのラベルと値を使用します。 メトリックを収集した後、メトリックフィルタータイプのフィルターを追加できます。 複数のフィルター条件を追加できます。 フィルタ条件は、論理積を用いて評価される。

フィルタータイプのフィルター

1. ダッシュボードへのグラフの追加

  1. ダッシュボードを追加します。 詳細については、「データベースの作成」をご参照ください。

  2. ダッシュボードの編集モードで、[追加] > [グラフの追加] を選択します。 詳細については、「編集モード」をご参照ください。

  3. [チャートの編集] ページの左側で、チャートのクエリ時間範囲、Logstore、およびクエリステートメントを設定します。 [チャートの編集] ページの右側で、[チャートの種類] セクションで [Table Pro] を選択します。 設定が完了したら、ページの上部にある [適用] をクリックして、テーブルの設定効果を表示します。 次に、ページの右上隅にある [OK] をクリックして、テーブルを保存します。

    次のクエリ文を実行して、1分あたりのPV数をクエリします。

    * | SELECT date_format(__time__ - __time__ % 60, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time

フィルタータイプのフィルターを追加

  1. ダッシュボードの編集モードで、右上隅の仪表盘过滤器-过滤器图标アイコンをクリックします。 詳細については、「編集モード」をご参照ください。

  2. [フィルター] パネルでパラメーターを設定し、[OK] をクリックします。 下表に、各パラメーターを説明します。

    次のサンプルコードは、動的リスト項目を使用するクエリ文の例を示しています。

    *|select distinct request_method

    image

    フィルタタイプのフィルタのパラメータ

    パラメーター

    説明

    名前

    フィルターの名前。The name of the filter.

    タイプ

    フィルター: フィルタータイプのフィルター。 このタイプのフィルターは、ログフィールドのキーと値のペアを使用してデータをフィルターします。 システムがデータをフィルタリングするとき、ANDまたはNOT演算子を使用して、指定されたキーと値のペアをクエリ文の前に追加します。 デフォルトでは、AND演算子が使用されます。

    • AND: 値AND [search query] | [sql query]

    • NOT: 値NOT [search query] | [sql query]

    [静的リスト項目] フィールドには複数の値を指定できます。

    グローバルフィルタリング

    • すべてのフィールドを値でフィルタリングする場合は、[グローバルフィルタリング] をオンにします。

    • 特定のフィールドを値でフィルタリングする場合は、[グローバルフィルタリング] をオフにします。

    キー値

    データのフィルタリングに使用するフィールドの名前。

    エイリアス

    キーのエイリアスを設定します。

    自動フィルタリング

    [自動フィルタリング] をオンにすると、データソースに存在しない値は自動的に除外されます。

    表示設定

    フィルターのパターン設定。 有効な値:

    • タイトルを表示: フィルターにタイトルを追加します。

    • 枠の表示: フィルターに枠を追加します。

    • 背景を表示: フィルターに白い背景を追加します。

    クエリ方法

    クエリ文の前にキーと値のペアを追加するために使用する演算子。 有効な値: AND演算子およびNOT演算子

    静的リストアイテム

    [キー値] フィールドで指定されたキーの値。

    プラス記号 ([+]) をクリックすると、指定したキーの値を追加できます。 値の [デフォルトで選択] をオンにすると、ダッシュボードを開くたびに値がデータのフィルタリングに使用されます。

    動的リストアイテムの追加

    [動的リスト項目の追加] をオンにすると、[キー値] フィールドで指定されたキーの値が動的に取得されます。 動的リスト項目は、指定したクエリ文の結果です。 結果は、指定した時間範囲によって異なります。 [動的リストアイテムの追加] をオンにする場合、次のパラメーターを設定する必要があります。

    • Select Project: 照会するプロジェクトを選択します。

    • Select Logstore: 照会するLogstoreを選択します。

    • [フィルター条件の継承]: [フィルター条件の継承] をオンにすると、ダッシュボードの既存のフィルター条件がフィルターに使用されます。

    • 検索と分析: クエリステートメントを入力し、クエリ時間範囲を指定します。

    • 動的リスト項目プレビュー: クエリと分析結果をプレビューします。

  3. ページのフィルターレイアウトを調整し、[保存] をクリックします。 [ダッシュボードの保存] ダイアログボックスで、[OK] をクリックします。

3. 結果の検証

ダッシュボードページで、request_methodフィルターのドロップダウンリストからGETおよびPUTを選択して、GETおよびPUTメソッドのPVの数を照会します。 次のクエリ文が実行されます。

(*)and (request_method: GET OR request_method: PUT)| SELECT date_format(__time__ - __time__ % 60, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time 

image

変数置換タイプのフィルターを追加

1. グラフのクエリステートメントの変数を指定する

  1. ダッシュボードを追加します。 詳細については、「データベースの作成」をご参照ください。

  2. ダッシュボードの編集モードで、[追加] > [グラフの追加] を選択します。 詳細については、「編集モード」をご参照ください。

  3. [チャートの編集] ページの左側で、変数を指定するクエリ時間範囲、Logstore、およびクエリステートメントを設定します。 [チャートの編集] ページの右側で、[チャートの種類] セクションで [Table Pro] を選択します。 設定が完了したら、ページの上部にある [適用] をクリックして、テーブルの設定効果を表示します。 次に、ページの右上隅にある [OK] をクリックして、テーブルを保存します。

    次のクエリステートメントは、異なる時間範囲内のPVの数をクエリするために実行されます。 ${{ interval | 60}} は、変数の名前がintervalで、変数のデフォルト値が60であることを指定します。

    * | SELECT date_format(__time__ - __time__ % ${{interval|60}}, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time

    设置变量

2. 変数置換タイプのフィルターを追加する

  1. ダッシュボードの編集モードで、右上隅の仪表盘过滤器-过滤器图标アイコンをクリックします。 詳細については、「編集モード」をご参照ください。

  2. [フィルター] パネルでパラメーターを設定し、[OK] をクリックします。 下表に、各パラメーターを説明します。

    説明
    • Key Valueパラメーターを指定した変数に設定する必要があります。 この例では、Key Valueパラメーターはintervalに設定されています。

    • [静的リストアイテム] フィールドで、間隔変数に異なる値を指定できます。

    image

    変数置換タイプのフィルターのパラメーター

    パラメーター

    説明

    名前

    フィルターの名前。The name of the filter.

    タイプ

    Variable Replacement: Variable Replacementタイプのフィルター。 このタイプのフィルタは、変数と変数値を使用してデータをフィルタリングします。 同じ変数が指定されているグラフがダッシュボードに含まれている場合、グラフのクエリステートメントの変数は、指定した値に置き換えられます。 [静的リスト項目] フィールドで複数の変数値を指定できます。

    キー値

    データのフィルタリングに使用する変数。

    説明

    プレースホルダー変数は、[キー値] フィールドで指定する変数と同じである必要があります。

    エイリアス

    キーのエイリアスを設定します。

    表示設定

    フィルターのパターン設定。 有効な値:

    • タイトルを表示: フィルターにタイトルを追加します。

    • 枠の表示: フィルターに枠を追加します。

    • 背景を表示: フィルターに白い背景を追加します。

    コンポーネントタイプの表示

    有効な値:

    • 値の入力

    • ドロップダウンリスト

    静的リストアイテム

    [キー値] フィールドで指定されたキーの値。

    プラス記号 ([+]) をクリックすると、指定したキーの値を追加できます。 値の [デフォルトで選択] をオンにすると、ダッシュボードを開くたびに値がデータのフィルタリングに使用されます。

    動的リストアイテムの追加

    [動的リスト項目の追加] をオンにすると、[キー値] フィールドで指定されたキーの値が動的に取得されます。 動的リスト項目は、指定したクエリ文の結果です。 結果は、指定した時間範囲によって異なります。 [動的リストアイテムの追加] をオンにする場合、次のパラメーターを設定する必要があります。

    • Select Project: 照会するプロジェクトを選択します。

    • Select Logstore: 照会するLogstoreを選択します。

    • [フィルター条件の継承]: [フィルター条件の継承] をオンにすると、ダッシュボードの既存のフィルター条件がフィルターに使用されます。

    • 検索と分析: クエリステートメントを入力し、クエリ時間範囲を指定します。

    • 動的リスト項目プレビュー: クエリと分析結果をプレビューします。

  3. ページのフィルターレイアウトを調整し、[保存] をクリックします。 [ダッシュボードの保存] ダイアログボックスで、[OK] をクリックします。

3. 結果を確認するVerify the results

  • ダッシュボードページのPVフィルターフィルターで、intervalパラメーターを10に設定して、10秒あたりのPV数を照会します。

    次のクエリ文が実行されます。

    * | SELECT date_format(__time__ - __time__ % 10, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time

    image

  • ダッシュボードページのPVフィルターフィルターで、intervalパラメーターを60に設定して、60秒あたりのPV数を照会します。

    次のクエリ文が実行されます。

    * | SELECT date_format(__time__ - __time__ % 60, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time

    image

メトリックフィルタータイプのフィルター

  1. Simple Log Serviceへのメトリクスの収集 詳細については、「ホストからのメトリックデータの収集」をご参照ください。

  2. フィルターを追加します。 メトリクスが収集されると、Simple Log Serviceは自動的にHost Monitoringという名前のダッシュボードを作成します。 [ホストモニタリング] ダッシュボードの編集モードで、右上隅の仪表盘过滤器-过滤器图标アイコンをクリックします。 詳細については、「編集モード」をご参照ください。 [フィルター] パネルでパラメーターを設定し、[OK] をクリックします。 下表に、各パラメーターを説明します。

    image

    メトリックフィルタタイプのフィルタのパラメータ

    パラメーター

    説明

    名前

    フィルターの名前。The name of the filter.

    タイプ

    メトリックフィルタ: メトリックフィルタタイプのフィルタ。 このタイプのフィルターは、フィルターデータに動的に追加されるラベルと値を使用します。 Metric filter型のフィルターを追加した後、ラベルと値を使用してMetricstoreのデータをフィルターできます。

    キー値

    フィルターの一意の識別子。

    エイリアス

    キーのエイリアスを設定します。

    表示設定

    フィルターのパターン設定。 有効な値:

    • タイトルを表示: フィルターにタイトルを追加します。

    • 枠の表示: フィルターに枠を追加します。

    • 背景を表示: フィルターに白い背景を追加します。

    プロジェクトの選択

    照会するプロジェクト。The project that you want to query.

    Metricstoreの選択

    クエリするMetricstore。The Metricstore that you want to query.

  3. ダッシュボードのデータのフィルタリング: ダッシュボードページの上部で、ドロップダウンリストからラベルと値を選択します。

グラフ上のデータをフィルタリングするための変数置換の設定

チャートの変数置換の設定を構成できます。 設定後、Simple Log Serviceはグラフの右上隅にフィルターを追加します。 これにより、フィルターを使用してチャート上のデータをフィルター処理できます。 次のセクションでは、テーブル内のさまざまな時間範囲内のPVの数をクエリするために実行する必要がある操作について説明します。

1. 変数置換の設定を構成する

  1. [チャートの編集] ページの左側で、変数を指定するクエリ時間範囲、Logstore、およびクエリステートメントを設定します。

    次のクエリステートメントは、異なる時間範囲内のPVの数をクエリするために実行されます。 ${{ date | 60}} は、変数の名前がdateで、変数のデフォルト値が60であることを指定します。

    * | select __time__ - __time__ % ${{date | 60}} as time, COUNT(*) as pv, avg(request_time) as duration, request_method GROUP BY time, request_method order by time limit 1000

    image

  2. 変数置換の設定を構成する

    1. [チャートの編集] ページの右側で、[チャートタイプ] セクションで [テーブルプロ] を選択し、[変数置換] セクションで [変数置換] > [追加変数置換] を選択します。

      image

    2. [変数置換] ダイアログボックスで、[変数キー] パラメーターをdataに、[表示名] パラメーターを時間に、[変数値] パラメーターの下の [表示名] パラメーターをminとhourに、置換値パラメーターを60と3600に設定します。

      变量替换

  3. グラフの編集ページの右上隅にある [OK] をクリックします。 次に、ダッシュボードページの右上隅にある [保存] をクリックします。 [ダッシュボードの保存] ダイアログボックスで、[OK] をクリックします。

2. チャート上のデータのフィルタリング

設定を構成すると、グラフの左上隅にフィルターが表示されます。 フィルタードロップダウンリストから値を選択した場合、Simple Log Serviceは選択した値に基づいてクエリおよび分析操作を実行します。 たとえば、時間を選択した場合、Simple Log Serviceは次のクエリステートメントを実行します。

(*)| select __time__ - __time__ % 3600 as time, COUNT(*) as pv, avg(request_time) as duration, request_method GROUP BY time, request_method order by time limit 1000 

image

インタラクションの発生とともに変数を使用

グラフのインタラクション発生を設定するときに、変数を指定することもできます。 チャート上の値をクリックしてインタラクションの発生をトリガーすると、システムは自動的に指定された変数を値に置き換えます。 これにより、データのクエリと分析が容易になります。 詳細については、「設定例」をご参照ください。

image