Simple Log Serviceは、ログ分析機能を提供します。 この機能はログ検索機能と連携し、SQL構文を使用して実装されます。 このトピックでは、分析ステートメントの構文と制限について説明します。 このトピックでは、ログ分析機能を使用するときに呼び出すことができるSQL関数も提供します。
ログを分析する場合は、標準ログストアにログを保存し、インデックスを設定するときに必要なフィールドのEnable Analyticsをオンにする必要があります。 詳細については、「ログストアのタイプによる比較」および「インデックスの作成」をご参照ください。
Simple Log Serviceは予約フィールドを提供します。 予約済みフィールドの分析方法の詳細については、「予約済みフィールド」をご参照ください。
構文
各クエリステートメントは、検索ステートメントと分析ステートメントで構成されます。 検索文と分析文は縦棒 (|) で区切られています。 検索文は単独で実行できます。 ただし、分析ステートメントは検索ステートメントと一緒に実行する必要があります。 ログ分析機能を使用して、検索結果のデータを分析できます。 この機能を使用して、Logstore内のすべてのデータを分析することもできます。
分析ステートメントでFROM句またはWHERE句を指定する必要はありません。 デフォルトでは、現在のLogstoreのすべてのデータが分析されます。
セミコロン (;) を分析ステートメントにステートメントターミネータとして追加する必要はありません。
分析ステートメントは大文字と小文字を区別しません。
構文
Search statement|Analytic statement
ステートメント
説明
検索文
検索文は、1つ以上の検索条件を指定する。 条件は、キーワード、数値、数値範囲、空白文字、またはアスタリスク (*) です。
検索文として空白文字またはアスタリスク (*) を指定した場合、条件は指定されず、すべてのログが返されます。 詳細については、「検索構文」をご参照ください。
分析ステートメント
分析ステートメントは、検索結果またはLogstore内のすべてのデータを集計または分析するために使用されます。
例:
* | SELECT status, count(*) AS PV GROUP BY status
制限事項
項目 | 標準SQL | 専用SQL |
同時分析ステートメントの数 | 各プロジェクトは、最大15の同時分析ステートメントをサポートします。 たとえば、15人のユーザーがプロジェクトのすべてのLogstoreで分析ステートメントを同時に実行できます。 | 各プロジェクトは、最大100の同時分析ステートメントをサポートします。 たとえば、100ユーザーは、プロジェクトのすべてのLogstoreで分析ステートメントを同時に実行できます。 |
データ量 | 各シャードは、1つの分析ステートメントに対して1 GBのデータのみをサポートします。 | 分析ステートメントは、最大200億行のデータを同時にスキャンできます。 |
有効にするメソッド | デフォルトでは、標準SQLが有効になっています。 | Dedicated SQLを手動で有効にするためのスイッチが用意されています。 詳細については、「Dedicated SQLの有効化」をご参照ください。 |
リソース使用料金 | 無料です。 | 実際のCPU時間に基づいて課金されます。 |
適用範囲 | ログ分析機能が有効になった後、Simple Log Serviceに書き込まれたデータのみを分析できます。 履歴データを分析する場合は、履歴データのインデックスを再作成する必要があります。 詳細については、「Logstoreのログの再インデックス」をご参照ください。 | ログ分析機能が有効になった後、Simple Log Serviceに書き込まれたデータのみを分析できます。 履歴データを分析する場合は、履歴データのインデックスを再作成する必要があります。 詳細については、「Logstoreのログの再インデックス」をご参照ください。 |
返される結果 | 既定では、分析ステートメントは最大100行のデータを返します。 より多くのデータを表示する場合は、LIMIT句を使用します。 詳細は、「LIMIT句」をご参照ください。 | 既定では、分析ステートメントは最大100行のデータを返します。 より多くのデータを表示する場合は、LIMIT句を使用します。 詳細は、「LIMIT句」をご参照ください。 |
フィールド値の長さ | 分析のために保持できるフィールド値の最大長は16,384バイトで、これは16 KBに相当します。 説明 デフォルトでは、分析用に保持できるフィールド値の最大長は2,048バイトで、これは2 KBに相当します。 フィールド値の最大長を変更する場合は、[maximum Statistics field length] パラメーターを設定します。 詳細については、「フィールド値の最大長の指定」をご参照ください。 | 分析のために保持できるフィールド値の最大長は16,384バイトで、これは16 KBに相当します。 説明 デフォルトでは、分析用に保持できるフィールド値の最大長は2,048バイトで、これは2 KBに相当します。 フィールド値の最大長を変更する場合は、[maximum Statistics field length] パラメーターを設定します。 詳細については、「フィールド値の最大長の指定」をご参照ください。 |
タイムアウト時間 | 1つの分析ステートメントの最大タイムアウト時間は55秒です。 | 1つの分析ステートメントの最大タイムアウト時間は55秒です。 |
double型フィールドの値の小数点以下の桁数 | double型フィールドの値には、小数点以下52桁まで指定できます。 小数点以下の桁数が52を超えると、フィールド値の精度が低下します。 | double型フィールドの値には、小数点以下52桁まで指定できます。 小数点以下の桁数が52を超えると、フィールド値の精度が低下します。 |
分析関数と構文
このセクションでは、Simple Log Serviceでサポートされている分析関数と構文を示します。
SQL関数
機械学習機能
SQL 構文
サンプル分析結果
次の図は、分析結果を表示するサンプルダッシュボードを示しています。