Simple Log Service Processing Language (SPL) を使用して、構造化データの抽出、フィールドの処理、およびログ内のデータのフィルタリングを行うことができます。 詳細については、「SPLの概要」をご参照ください。 Simple Log Serviceは、SPLに基づくマルチレベルのデータ処理をサポートし、処理後に結果データをエクスポートできます。
背景情報
SPLステートメントのフィールドにインデックスが付けられていて、そのフィールドに対して [分析の有効化] がオンになっている場合、SPLを使用してインデックスモードでログを照会および分析できます。 SPLステートメントのフィールドにインデックスが作成されていない場合は、SPLを使用して、スキャンモードでログを照会および分析できます。 詳細については、「スキャンベースのクエリの概要」をご参照ください。
サポートされるリージョン
サポートされていないリージョンでは、SPLステートメントのフィールドがインデックス付けされているかどうかに関係なく、スキャンモードが使用されます。
中国 (福州-地方) およびインドネシア (ジャカルタ)
基本構文
構文
SPL命令の構文の詳細については、「SPL命令」をご参照ください。
Index-based search statement | <spl-cmd> ... | <spl-cmd> ...
例
特定の条件に基づいて生ログをフィルタリングします。
status:200 | where host like '%www%'
新しいフィールドを生成し、新しいフィールドに基づいてデータをフィルタリングします。
status:200 | extend timediff = cast(endTime as bigint) - cast(beginTime as bigint) | where timediff > 100
JSONフィールドを展開して新しいフィールドを取得し、元のJSONフィールドを破棄します。
status:200 | parse-json body | project-away body
インデックスベースとスキャンベースのSPLの比較
SPLステートメントのフィールドにインデックスが付けられていて、そのフィールドに対して [分析の有効化] がオンになっている場合、SPLを使用してインデックスモードでログを照会および分析できます。 それ以外の場合は、SPLを使用してスキャンモードでログを照会および分析できます。
項目 | インデックスベースのSPL | スキャンベースのSPL |
インデックスを作成する必要があるかどうか | SPLステートメントのフィールドに対してインデックスを作成し、フィールドに対してEnable Analyticsをオンにする必要があります。 | いいえ。 重要 インデックスベースの検索文にはインデックスが必要です。 |
パフォーマンス | 高い。 | 中程度だ |
ランダムなページめくりのサポート | サポートされています。 | サポートされていません。 |
ログヒストグラム | ログヒストグラムは、検索文の結果に基づいて表示されます。 | ログヒストグラムは、検索文の結果とスキャンの進行状況に基づいて表示されます。 |
演算子と関数 | 詳細については、「SPL手順」および「SPLがサポートするSQL関数」をご参照ください。 | 詳細については、「SPL手順」および「SPLがサポートするSQL関数」をご参照ください。 |
フィールドタイプ | システムは、SPLステートメントのフィールドの型をテキストと見なします。 詳細については、「データ型の変換」をご参照ください。 | システムは、SPLステートメントのフィールドの型をテキストと見なします。 詳細については、「データ型の変換」をご参照ください。 |
結果サイズ | クエリ操作で返すログの数は、Simple Log Serviceコンソールで指定するか、SDKを呼び出して指定できます。 最大100個のログを指定できます。 | 次のいずれかの条件が満たされると、システムは現在のスキャンを停止し、結果を返します。
|
料金 | インデックストラフィックとインデックスストレージに対して課金されます。 詳細については、「機能課金の課金項目」をご参照ください。 SPLの使用に対して課金されません。 | スキャンの料金は、スキャン後に返されたデータ量に相当するスキャントラフィックに基づいて課金されます。 システムは、インデックスベースのクエリの結果に基づいてログを識別します。 |
操作方法
ログを照会する前に、ログが収集され、インデックスが作成されていることを確認してください。 インデックスは、ログデータの1つ以上の列をソートするために使用されるストレージ構造です。 詳細については、「インデックスの作成」をご参照ください。
コンソール
Simple Log Serviceコンソールにログインします。 Logstoreのクエリと分析ページに移動し、クエリステートメントを実行します。 詳細については、「ログの照会と分析」をご参照ください。
例
生ログの数は1,000万です。 SPLステートメントはStatus:200 | ここでカテゴリは '% xx %'
です。 Status:200
を満たし、where Category like '% xx %'
の条件が返される合計1,000のログ。 クエリおよび分析ページのログヒストグラムには、クエリ結果に基づいて1,000ログの分布が経時的に表示されます。
API
GetLogsまたはGetLogsV2操作を呼び出してログを照会します。 GetLogs操作のクエリ結果は圧縮されず、直接返されます。 GetLogsV2操作のクエリ結果は圧縮されて返されます。