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

:GetLogs

最終更新日:Oct 27, 2025

この操作は、指定されたプロジェクトの Logstore 内のログデータをクエリします。

操作説明

説明

Simple Log Service は、スケジュールされた SQL ジョブをサポートしています。詳細については、「スケジュールされた SQL ジョブの作成」をご参照ください。

  • リクエスト構文の Host は、プロジェクト名と Simple Log Service エンドポイントで構成されます。Host にはプロジェクト名を指定する必要があります。

  • AccessKey ペアを作成して取得します。詳細については、「AccessKey ペア」をご参照ください。

Alibaba Cloud アカウントに属する AccessKey ペアは、すべての API にアクセスする権限を持っています。これは高いセキュリティリスクをもたらします。API 呼び出しや日常の運用保守 (O&M) を行うには、RAM ユーザーを作成して使用することを強くお勧めします。RAM ユーザーは、Simple Log Service リソースにアクセスするために必要な権限を持っている必要があります。詳細については、「RAM ユーザーの作成と権限付与」をご参照ください。

  • プロジェクトの名前とリージョン、およびクエリしたいログが含まれる Logstore の名前を取得します。詳細については、「プロジェクトの管理」および「Logstore の管理」をご参照ください。

  • Simple Log Service はログクエリに制限を課しています。したがって、適切なクエリ文と分析文を設計し、合理的なクエリ時間範囲を設定する必要があります。詳細については、「ログクエリの制限」および「ログ分析の制限」をご参照ください。

  • ログをクエリする前にインデックスを設定する必要があります。詳細については、「インデックスの作成」をご参照ください。

  • クエリに一致するログの数が大幅に異なる場合、Simple Log Service API は、完全な結果を取得するためにこの操作を呼び出す必要がある回数を予測できません。各応答の x-log-progress ヘッダーの値を確認して、操作を再度呼び出す必要があるかどうかを判断します。繰り返される各呼び出しは、同数のクエリ容量単位 (CU) を消費します。

  • ログが Logstore に書き込まれると、GetHistograms および GetLogs 操作を使用してログがクエリ可能になるまでの待機時間は、ログのタイプによって異なります。Simple Log Service は、タイムスタンプに基づいてログを次の 2 種類に分類します。

    • リアルタイムデータ: ログのタイムスタンプは、現在のサーバー時間に対して (-180 秒, 900 秒] の時間範囲内にあります。たとえば、ログが UTC 2014-09-25 12:03:00 に生成され、サーバーによって UTC 2014-09-25 12:05:00 に受信された場合、ログはリアルタイムデータとして処理されます。これは通常、通常のシナリオで発生します。リアルタイムデータがクエリ可能になるまでの待機時間は約 3 秒です。

    • 既存データ: ログのタイムスタンプは、現在のサーバー時間に対して [-7 × 86,400 秒, -180 秒) の時間範囲内にあります。たとえば、ログが UTC 2014-09-25 12:00:00 に生成され、サーバーによって UTC 2014-09-25 12:05:00 に受信された場合、ログは既存データとして処理されます。これは通常、データバックフィルのシナリオで発生します。

説明

Simple Log Service は、ログ時間 (__time__ フィールド) とサーバー受信時間 (__tag__: receive_time フィールド) の差を計算します。差が (-180 秒, 900 秒] の範囲内にある場合、ログはリアルタイムデータです。差が [-7 × 86,400 秒, -180 秒) の範囲内にある場合、ログは既存データです。

  • Simple Log Service は、Java および Python のソフトウェア開発キット (SDK) で GetLogs 操作を使用する方法の例を提供します。詳細については、「Java の GetLogs の例」および「Python の GetLogs の例」をご参照ください。

権限付与

次の表に、この操作に必要な権限付与情報を示します。この情報を RAM アクセスポリシーステートメントの Action 要素に追加して、RAM ユーザーまたは RAM ロールにこの操作を呼び出す権限を付与できます。

Actionリソース
log:GetLogStoreLogsacs:log:{#regionId}:{#accountId}:project/{#ProjectName}/logstore/{#LogstoreName}

今すぐお試しください

この API を OpenAPI Explorer でお試しください。手作業による署名は必要ありません。呼び出しに成功すると、入力したパラメーターに基づき、資格情報が組み込まれた SDK コードが自動的に生成されます。このコードをダウンロードしてローカルで使用できます。

テスト

RAM 認証

この操作の認証情報はありません。問題が発生した場合は、アカウントマネージャーにご連絡ください。

リクエスト構文

GET /logstores/{logstore}?type=log HTTP/1.1

パスパラメータ

パラメーター

必須 / 任意

説明

logstore

string

必須

データをクエリする Logstore。

example-logstore

リクエストパラメーター

パラメーター

必須 / 任意

説明

project

string

必須

プロジェクトの名前。

ali-test-project

from

integer

必須

クエリする時間範囲の開始時刻。この時間は、ログデータが書き込まれるときに指定されるログ時間です。

  • from および to パラメーターで指定される時間範囲は、左側が閉じて右側が開いた区間です。この区間には開始時刻は含まれますが、終了時刻は含まれません。fromto の値が同じ場合、区間は無効です。システムはエラーを返します。

  • 値は UNIX タイムスタンプです。これは、エポックタイム 1970 年 1 月 1 日 00:00:00 UTC から経過した秒数を表します。

説明

データが欠落しないように、クエリ時間を分単位にスナップします。分析文で時間範囲を指定した場合、分析文の時間範囲がクエリと分析に使用されます。

秒単位で時間を指定するには、from_unixtime 関数または to_unixtime 関数を使用して、分析文の時間フォーマットを変換します。例:

  • * | SELECT * FROM log WHERE from_unixtime(__time__) > from_unixtime(1664186624) AND from_unixtime(__time__) < now()

  • * | SELECT * FROM log WHERE __time__ > to_unixtime(date_parse('2022-10-19 15:46:05', '%Y-%m-%d %H:%i:%s')) AND __time__ < to_unixtime(now())

1627268185

to

integer

必須

クエリする時間範囲の終了時刻。この時間は、ログデータが書き込まれるときに指定されるログ時間です。

  • from および to パラメーターで指定される時間範囲は、左側が閉じて右側が開いた区間です。この区間には開始時刻は含まれますが、終了時刻は含まれません。fromto の値が同じ場合、区間は無効です。システムはエラーを返します。

  • 値は UNIX タイムスタンプです。これは、エポックタイム 1970 年 1 月 1 日 00:00:00 UTC から経過した秒数を表します。

説明

データが欠落しないように、クエリ時間を分単位にスナップします。分析文で時間範囲を指定した場合、分析文の時間範囲がクエリと分析に使用されます。

秒単位で時間を指定するには、from_unixtime 関数または to_unixtime 関数を使用して、分析文の時間フォーマットを変換します。例:

  • * | SELECT * FROM log WHERE from_unixtime(__time__) > from_unixtime(1664186624) AND from_unixtime(__time__) < now()

  • * | SELECT * FROM log WHERE __time__ > to_unixtime(date_parse('2022-10-19 15:46:05', '%Y-%m-%d %H:%i:%s')) AND __time__ < to_unixtime(now())

1627269085

query

string

任意

検索文または分析文。詳細については、「クエリの概要」および「分析の概要」をご参照ください。 排他的 SQL 機能を使用するには、クエリパラメーターの分析文に set session parallel_sql=true; を追加します。例: * | set session parallel_sql=true; select count(*) as pv。一般的なクエリと分析の問題については、「ログのクエリと分析で発生する一般的なエラー」をご参照ください。

説明

クエリパラメーターに分析文 (SQL 文) が含まれている場合、line および offset パラメーターは無効です。これらのパラメーターを 0 に設定することをお勧めします。ページをめくるには、SQL 文で LIMIT 句を使用する必要があります。詳細については、「クエリと分析結果のページング」をご参照ください。

status: 401 | SELECT remote_addr,COUNT(*) as pv GROUP by remote_addr ORDER by pv desc limit 5

topic

string

任意

ログの Topic。デフォルト値は空の文字列です。詳細については、「Topic」をご参照ください。

topic

line

integer

任意

このパラメーターは、クエリパラメーターが検索文の場合にのみ有効です。リクエストに対して返されるログの最大数を指定します。値の範囲は 0 から 100 です。デフォルト値は 100 です。ページングされたクエリの詳細については、「クエリと分析結果のページング」をご参照ください。

100

offset

integer

任意

このパラメーターは、クエリパラメーターが検索文の場合にのみ有効です。クエリの開始行を指定します。デフォルト値は 0 です。ページングされたクエリの詳細については、「クエリと分析結果のページング」をご参照ください。

0

reverse

boolean

任意

タイムスタンプの降順でログを返すかどうかを指定します。精度は分レベルです。

  • true: タイムスタンプの降順でログを返します。

  • false (デフォルト): タイムスタンプの昇順でログを返します。

重要
  • クエリパラメーターが検索文の場合、reverse パラメーターは有効であり、返されるログのソート順を指定します。

  • クエリパラメーターが検索および分析文の場合、reverse パラメーターは無効です。ソート順は SQL 分析文の ORDER BY 句によって指定されます。ORDER BY 句が asc (デフォルト) を指定する場合、ログは昇順にソートされます。ORDER BY 句が desc を指定する場合、ログは降順にソートされます。

false

powerSql

boolean

任意

排他的 SQL 機能を使用するかどうかを指定します。詳細については、「排他的 SQL 機能の有効化」をご参照ください。

  • true: 排他的 SQL 機能を使用します。

  • false (デフォルト): 標準 SQL 機能を使用します。

powerSql パラメーターを使用するだけでなく、query パラメーターを使用して排他的 SQL 機能を有効にすることもできます。

false

レスポンスフィールド

フィールド

説明

array

ログの配列。各要素はログです。

object

ログの配列。各要素はログです。

[{'remote_addr': '198.51.XXX.XXX', 'pv': '1', '__source__': '', '__time__': '1649902984'}, {'remote_addr': '198.51.XXX.XXX', 'pv': '1', '__source__': '', '__time__': '1649902984'}, {'remote_addr': '198.51.XXX.XXX', 'pv': '1', '__source__': '', '__time__': '1649902984'}, {'remote_addr': '198.51.XXX.XXX', 'pv': '1', '__source__': '', '__time__': '1649902984'}, {'remote_addr': '198.51.100.XXX', 'pv': '1', '__source__': '', '__time__': '1649902984'}]

成功レスポンス

JSONJSON

[
  {
    "test": "test",
    "test2": 1
  }
]

エラーコード

完全なリストについては、「エラーコード」をご参照ください。

変更履歴

完全なリストについては、「変更履歴」をご参照ください。