Logstore 内の指定されたクエリ条件を満たすログのディストリビューションを照会します。
操作説明
操作の説明
リクエスト構文の Host は、プロジェクト名と Log Service エンドポイントで構成されます。Host にプロジェクトを指定してください。
応答における部分区間の分割は常に安定しています。クエリリクエストの時間範囲が変更されない場合、応答の部分区間分割も変更されません。
クエリ対象のログ数が大幅に変化した場合、完全な結果を取得するためにこの操作を何回呼び出す必要があるかを Simple Log Service API が予測できないことがあります。各リクエストの応答内の進行状況ステータス値を確認し、最終的な完全な結果を取得するためにこの操作を再度呼び出す必要があるかどうかを判断してください。繰り返し呼び出すたびに、同じ数のクエリ CU が消費されます。
- Logstore へのログ書き込みから LogSearch 操作(GetHistograms および GetLogs)によるログクエリまでの遅延は、ログタイプによって異なります。Simple Log Service は、ログの UNIX タイムスタンプに基づいてログを以下の 2 つのタイプに分類します。
リアルタイムデータ:ログ内の時刻が現在のサーバー時刻に対して (-180 秒, 900 秒] の有効値内にある場合。たとえば、ログ時刻が協定世界時 (UTC) 2014-09-25 12:03:00 で、サーバーがログを協定世界時 (UTC) 2014-09-25 12:05:00 に受信した場合、そのログはリアルタイムデータとして処理されます。リアルタイムデータの書き込みから LogSearch インターフェイスでのデータクエリまでの遅延は 3 秒です。
既存データ:ログ内の時刻が現在のサーバー時刻に対して [-7x86400 秒, -180 秒) の有効値内にある場合。たとえば、ログ時刻が協定世界時 (UTC) 2014-09-25 12:00:00 で、サーバーがログを協定世界時 (UTC) 2014-09-25 12:05:00 に受信した場合、そのログは既存データとして処理されます。これは通常、データバックフィルのシナリオで発生します。 リアルタイムデータの書き込みからデータのクエリまでの最大値の遅延は 3 秒です。99.9% のケースで、クエリは 1 秒以内に完了します。
Simple Log Service は、ログ時刻(フィールド名: __time__)とサーバー受信時刻(フィールド名: __tag__:__receive_time__)の差を計算します。差が (-180 秒, 900 秒] の有効値内にある場合、ログはリアルタイムデータです。差が [-7x86400 秒, -180 秒) の有効値内にある場合、ログは既存データです。
Simple Log Service では、Java SDK における GetHistograms クエリの使用量例を提供しています。詳細については、「GetHistograms を使用したログディストリビューションのクエリ」を参照してください。
今すぐお試しください
テスト
RAM 認証
リクエスト構文
GET /logstores/{logstore}/index?type=histogram HTTP/1.1
パスパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| logstore |
string |
必須 |
Logstore の名前。 |
test-logstore |
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| project |
string |
必須 |
プロジェクトの名前。 |
ali-test-project |
| from |
integer |
必須 |
部分区間の開始時刻。この値は、1970 年 1 月 1 日 00:00:00 協定世界時 (UTC) からの経過秒数を表す UNIX タイムスタンプです。 |
1409529600 |
| to |
integer |
必須 |
部分区間の終了時刻。この値は、1970 年 1 月 1 日 00:00:00 協定世界時 (UTC) からの経過秒数を表す UNIX タイムスタンプです。 |
1409569200 |
| topic |
string |
任意 |
ログのトピック。 |
topic |
| query |
string |
任意 |
クエリ文。クエリ文のみがサポートされています。分析文はサポートされていません。クエリ構文のフォーマットの詳細については、「クエリ構文」を参照してください。 |
with_pack_meta |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
array |
|||
|
object |
|||
| from |
integer |
部分区間の開始時刻。この値は、1970 年 1 月 1 日 00:00:00 協定世界時 (UTC) からの経過秒数を表す UNIX タイムスタンプです。 時間間隔は左閉右開の原則に従います。区間には開始時刻が含まれますが、終了時刻は含まれません。from と to の値が同じ場合、区間は無効であり、関数はエラーを返します。 |
1409529600 |
| to |
integer |
部分区間の終了時刻。この値は、1970 年 1 月 1 日 00:00:00 協定世界時 (UTC) からの経過秒数を表す UNIX タイムスタンプです。 時間間隔は左閉右開の原則に従います。区間には開始時刻が含まれますが、終了時刻は含まれません。from と to の値が同じ場合、区間は無効であり、関数はエラーを返します。 |
1409569200 |
| count |
integer |
部分区間で照会されたログの数。 |
2 |
| progress |
string |
部分区間のクエリ結果が完全であるかどうかを示します。 Complete: クエリは完了しており、返された結果は完全です。 Incomplete: クエリは完了していますが、返された結果は不完全です。完全な結果を取得するには、リクエストを繰り返してください。 |
Complete |
例
成功レスポンス
JSONJSON
[
{
"from": 1409529600,
"to": 1409569200,
"count": 2,
"progress": "Complete"
}
]
エラーコード
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。