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

Simple Log Service:データモデル

最終更新日:Jun 11, 2026

Simple Log Service (SLS) のリージョン、プロジェクト、Logstore、ログ、およびその他のデータ構造について説明します。

以下の概念は、SLS のデータモデルを説明するものです。

リージョン

リージョンは、Alibaba Cloud のサービスノードです。ユーザーのアクセスレイテンシーを低減するために、さまざまなリージョンにサービスをデプロイします。

プロジェクト

プロジェクトは、SLS におけるリソース分離と制御のための基本的な管理単位です。プロジェクトを使用して、アプリケーションのすべてのログとログソースを管理します。

Logstore

Logstore は、SLS におけるログ収集、ストレージ、消費の単位です。各 Logstore はプロジェクトに属し、1 つのプロジェクトに複数の Logstore を含めることができます。ベストプラクティス: ログタイプごとに 1 つの Logstore を作成してください。たとえば、操作ログ、アプリケーションログ、アクセスログを生成する big-game という名前のゲームアプリケーションの場合、big-game という名前のプロジェクトを 1 つ作成し、ログタイプごとに 1 つずつ、合計 3 つの Logstore を作成します。

ログ

ログは、SLS における最小のデータ単位です。SLS では、以下の半構造化データモデルを使用します。
フィールド 説明 要件
time 予約済みフィールド。ログが生成された時刻で、通常はログタイムスタンプから抽出されます。 整数。UNIX タイムスタンプ (秒単位) (1970 年 1 月 1 日 00:00:00 UTC からの経過秒数) です。
topic ログを分類するためのカスタムフィールド。たとえば、アクセスログをサイトごとに分類します。 空文字列を含む、最大 128 バイトの任意の文字列。デフォルトは空文字列です。
source ログソース (発生元のマシンの IP アドレスなど)。 最大 128 バイトの任意の UTF-8 エンコード文字列。デフォルトは空文字列です。
content ログの内容。1 つ以上のキーバリューペアで構成されます。 キー: UTF-8 文字列、最大 128 バイト。使用可能な文字:英字、数字、アンダースコア (_)。数字で始めることはできません。予約キー:
  • __time__
  • __source__
  • __topic__
  • __partition_time__
  • __extract_others__
  • __extract_others__
値: 任意の UTF-8 文字列、最大 1 MB。
tags ログタグ:
  • カスタム: PutLogs API を介してデータを書き込むときに追加されます。
  • サーバー側: サービスによって追加されます。これには、__client_ip____receive_time__ が含まれます。
辞書形式。キーと値は両方とも文字列です。コンソールでは、タグは __tag__: というプレフィックス付きで表示されます。

トピック

Logstore 内のログは、トピックによって分類できます。ログを書き込むときにトピックを指定し、クエリ時にトピックでフィルタリングします。たとえば、ユーザー ID をトピックとして使用すると、各ユーザーは自身のログのみを表示できます。分類が不要な場合は、すべてのログに同じトピックを使用します。

説明 空の文字列は有効なトピックであり、書き込みとクエリの両方でデフォルト値です。トピックが不要な場合は、デフォルトの空の文字列を使用してください。

次の例は、生の Nginx アクセスログを SLS データモデルにマッピングする方法を示しています。Nginx サーバーの IP アドレスは 10.10.10.1 です:

10.1.1.1 - - [01/Mar/2012:16:12:07 +0800] "GET /Send?AccessKeyId=82251054** HTTP/1.1" 200 5 "-" "Mozilla/5.0 (X11; Linux i686 on x86_64; rv:10.0.2) Gecko/20100101 Firefox/10.0.2"
この生ログは、次のように SLS データモデルにマッピングされます。
フィールド 内容 説明
topic なし デフォルト値 (空文字列) が使用されます。
time 1330589527 生ログのタイムスタンプから変換された、正確なログ生成時刻 (秒単位)。
source 10.10.10.1 サーバーの IP アドレスがログソースとして使用されます。
content キーバリューペア ログの具体的な内容。
生ログの内容は、次のようにキーバリューペアに抽出できます。
キー
ip 10.1.1.1
method GET
status 200
length 5
ref_url -
browser Mozilla/5.0 (X11; Linux i686 on x86_64; rv:10.0.2) Gecko/20100101 Firefox/10.0.2

ログ (複数形)

ログの集まりです。

LogGroup

ログのグループです。

LogGroupList

結果を返すための LogGroup の集まりです。

エンコーディング方式

SLS は、次のエンコーディング方式をサポートしています。RESTful API の Content-Type ヘッダーで方式を指定します。
意味 説明 Content-Type
Protobuf Protobuf でエンコードされたデータモデル。 application/x-protobuf

Protobuf 形式の詳細については、「データエンコーディング方式」をご参照ください。

説明

Protobuf では一意のキーバリューペアは必須ではありませんが、キーが重複すると未定義の動作を引き起こす可能性があります。

フィールドは、Protobuf のフィールド番号の順序でエンコードしてください。順序が正しくないフィールドは、解析に失敗する可能性があります。