すべてのプロダクト
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 のフィールド番号の順序でエンコードしてください。順序が正しくないフィールドは、解析に失敗する可能性があります。