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

Simple Log Service:SPLを使用したログの照会と分析

最終更新日:Aug 30, 2024

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個のログを指定できます。

次のいずれかの条件が満たされると、システムは現在のスキャンを停止し、結果を返します。

  • 特定されたログの数が、指定されたログ数に達しました。

    クエリ操作で返すログの数は、Simple Log Serviceコンソールで指定するか、SDKを呼び出して指定できます。

  • スキャンされたログの数が、現在のスキャンで自動的に指定された上限を超えています。 デフォルトでは、検索文の結果サイズは10,0000です。

  • スキャン期間が45秒を超えています。

料金

インデックストラフィックとインデックスストレージに対して課金されます。 詳細については、「機能課金の課金項目」をご参照ください。

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操作のクエリ結果は圧縮されて返されます。