NGINX アクセスログが Simple Log Service に収集された後、Simple Log Service でクエリ文を実行して、1 分あたりのページビュー(PV)数をクエリできます。 10 秒、60 秒、または 600 秒あたりの PV 数をクエリする場合、クエリ文を複数回変更する必要があります。操作を簡素化するために、変数置換タイプのフィルターを追加できます。このトピックでは、変数置換タイプのフィルターを追加して、NGINX アクセスログに基づいて PV 数をクエリする方法について説明します。
前提条件
NGINX アクセスログが収集されます。詳細については、「サーバーからテキストログを収集する」をご参照ください。
インデックスが作成されます。詳細については、「インデックスを作成する」をご参照ください。
手順
次の図は、変数置換タイプのフィルターを追加するために実行する必要がある操作を示しています。
Simple Log Service では、フィルタータイプとメトリックフィルタータイプのフィルターを追加することもできます。詳細については、「フィルタータイプ」をご参照ください。
ステップ 1:データをクエリして分析する
クエリ文を使用して 1 分あたりの PV 数をクエリするには、次の操作を実行します。
Simple Log Service コンソール にログオンします。
プロジェクト セクションで、管理するプロジェクトをクリックします。
タブで、管理するログストアをクリックします。
検索ボックスにクエリ文を入力し、[過去 15 分] をクリックして、クエリ時間範囲を指定します。
この例では、次のクエリ文を入力して、1 分あたりの PV 数をクエリします。
* | SELECT date_format(__time__ - __time__ % 60, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time
クエリと分析の結果がチャートに表示されます。
ステップ 2:ダッシュボードにチャートを追加する
1 分あたりの PV 数を表示するチャートを NGINX アクセスログダッシュボードに追加するには、次の操作を実行します。
[グラフ] タブで、[新しいダッシュボードに追加] をクリックします。
[新しいダッシュボードに追加] ダイアログボックスで、ビジネス要件に基づいてパラメーターを構成し、[OK] をクリックします。
ダッシュボードパラメーターの詳細については、「ダッシュボードにチャートを追加する」をご参照ください。
ステップ 3:変数を構成する
クエリ時間範囲を変数として構成するには、次の操作を実行します。
左側のナビゲーションウィンドウで、[ダッシュボード] アイコンをクリックし、[ダッシュボード] をクリックします。
[ダッシュボード] リストで、[NGINX アクセスログ] をクリックします。
[NGINX アクセスログ] ページの右上隅にある [編集] をクリックします。変数を構成するチャートを見つけ、 を選択します。
クエリ文の [60] を [${{interval|60}}] に変更し、[適用] をクリックしてから、[OK] をクリックします。
interval
は変数の名前で、60 は変数の値です。変数が構成されると、フィルターを追加するときに、変数の値を指定できます。 [${{interval}}] を使用して変数を構成すると、データをクエリして分析するときにエラーが報告されます。次の例は、元のクエリ文を示しています。
* | SELECT date_format(__time__ - __time__ % 60, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time
次の例は、変数を構成した後のクエリ文を示しています。
* | SELECT date_format(__time__ - __time__ % ${{interval|60}}, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time
変数の詳細については、「変数を使用してクエリ文のパラメーターを動的に変更する」をご参照ください。
ステップ 4:フィルターを追加する
構成した変数を使用してフィルターを追加するには、次の操作を実行します。
[NGINX アクセスログ] ページの右上隅にある
アイコンをクリックします。
[フィルター] パネルで、パラメーターを構成し、[OK] をクリックします。
説明[タイプ] を [変数置換] に設定する必要があります。
[キー値] を、「ステップ 3:変数を構成する」セクションで構成した変数に設定する必要があります。この例では、キー値を [interval] に設定します。
[静的リストアイテム] セクションで、interval 変数の異なる値を指定できます。
フィルターパラメーターの詳細については、「ダッシュボードでデータをフィルタリングするためのフィルターを追加する」をご参照ください。
ページのフィルターレイアウトを調整し、[保存] をクリックします。
[ダッシュボードの保存] ダイアログボックスで、[OK] をクリックします。
NGINX アクセスログダッシュボードに interval フィルターが表示されます。
ステップ 5:結果を確認する
[NGINX アクセスログ] ページの [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
NGINX アクセスログダッシュボードに、10 秒あたりの PV 数が表示されます。
[NGINX アクセスログ] ページの [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
NGINX アクセスログダッシュボードに、60 秒あたりの PV 数が表示されます。