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

Simple Log Service:言語の概要

最終更新日:Nov 09, 2025

Simple Log Service (SLS) のドメイン固有言語 (DSL) は、データ変換用の Python 互換スクリプトです。SLS DSL は Python 上に構築されており、200 以上のビルトイン関数を提供してデータ変換タスクを簡素化します。

柔軟なオーケストレーション

SLS DSL を使用して関数を編集し、さまざまなロジックを組み合わせて、ほとんどのデータ変換シナリオに対応できます。

動的な配信

特定のロジックに基づいて、データを異なる宛先 Logstore に配信できます。宛先 Logstore の名前は、動的に計算したり、OSS バケットなどの外部ソースから取得したりできます。

柔軟なエンリッチメント

  • OSS バケットや ApsaraDB RDS for MySQL インスタンスなどのローカルまたは外部リソースからエンリッチメントデータを取得します。

  • 辞書とテーブルの標準マッピング、およびテーブルの高度なマッピングを実行します。

  • ロードされた外部リソースを自動的にリフレッシュします。

グローバル操作関数

SLS DSL は、パラメーターを使用して操作を制御する約 30 のグローバル操作関数を提供します。これらの関数は、式関数の結果をパラメーターとして受け入れます。制御関数は、式関数や他のステップ関数と組み合わせることができます。主な関数の種類は次のとおりです。

  • フロー制御関数

    • if-elseifswitchcompose などの関数を使用して、条件付きのブランチを作成します。

    • e_search などの簡易検索関数を使用して、さまざまな種類のログを処理します。

  • イベント操作関数

    イベントのドロップ、保持、分割、出力、およびコピー。

  • フィールド操作関数

    フィールドの保持、削除、および名前変更。

  • フィールド値抽出関数

    • 正規表現、GROK、KV、KV セパレーター、CSV、TSV、PSV、または Syslog を使用して、フィールドから複数の値またはキーと値のペアを抽出します。

    • JSON データを抽出してエンリッチします。

  • マッピングおよびエンリッチメント関数

    • 辞書とテーブルに基づいてマッピングまたは検索します。

    • ルール構成、外部 OSS バケット、ApsaraDB RDS for MySQL インスタンスなどのリソースから、エンリッチメントのためのディメンションテーブル情報を取得します。

    • 完全な変更ログまたは増分変更ログに基づいて、外部リソースを自動的にリフレッシュします。

  • 付加価値コンテンツ関数

    ログフィールド情報をエンリッチします。たとえば、IP アドレスの脅威インテリジェンスを取得し、この情報をログフィールドに保存して、ログ分析を容易にすることができます。

式関数

SLS DSL は、イベントを変換したり、グローバル関数の動作を制御したりするための 200 以上のビルトイン式関数を提供します。これらの関数は、ほとんどのデータ変換のニーズをカバーします。主な関数の種類は次のとおりです。

  • イベントチェック関数

    これらの関数は、Lucene のような構文、完全な正規表現、文字列、ワイルドカード、数値比較、および AND、OR、NOT の論理的な組み合わせを使用する条件付きのフィルターメカニズムを提供します。

  • 演算子関数

    これらの関数は、フィールド値の取得、制御、比較、コンテナーチェック、および複数フィールドの操作をサポートします。

  • 変換関数

    これらの関数は、基本型変換、数値変換、辞書およびリスト変換の操作を提供します。

  • 算術関数

    これらの関数は、基本的な計算、複数値の計算、数学的な計算、および数学的なパラメーターをサポートします。

  • 文字列関数

    これらの関数は、エンコーディング、デコーディング、ソート、反転、置き換え、標準正規化、検索、分割、フォーマット、文字セットチェックなどの複数フィールド操作を提供します。

  • 日時関数

    これらの関数は、日時の変換、日時プロパティの取得、現在の日時の取得、UNIX タイムスタンプの取得、日時文字列の取得、および日時値の変更と比較をサポートします。

  • 正規表現関数

    これらの関数は、フィールドの抽出、一致、評価、置き換え、および分割の操作を提供します。

  • GROK 関数

    これらの関数は、400 以上のビルトイン GROK パターンを提供し、GROK パターンの置き換えをサポートします。

  • 特定の構造化データ関数

    これらの関数は、JSON、Protobuf、XML などの特定の構造からのデータの抽出とフィルターをサポートします。

  • IP 解析関数

    これらの関数は、IP アドレス解決と変換をサポートします。

  • エンコーディングおよびデコーディング関数

    これらの関数は、SHA1、SHA256、SHA512、MD5、HTML、URL、Base64 などのフォーマットでのテキストのエンコーディングとデコーディングをサポートします。