Logstore 内の指定されたクエリ条件を満たすログのディストリビューションを照会します。
操作説明
操作の説明
リクエスト構文の Host は、プロジェクト名と Log Service エンドポイントで構成されます。Host にプロジェクトを指定する必要があります。
レスポンスの部分区間の分割は常に安定しています。クエリリクエストの時間範囲が変更されない場合、レスポンスの部分区間の分割も変更されません。
クエリに含まれるログの数が大幅に変動する場合、Log Service API は完全な結果を取得するためにこの操作を何回呼び出す必要があるかを予測できません。各リクエストのレスポンス内の進行状況ステータス値を確認して、最終的な完全な結果を取得するためにこの操作を再度呼び出す必要があるかどうかを判断してください。繰り返し呼び出すたびに、同じ数のクエリ CU が消費されます。
- ログが Logstore に書き込まれてから LogSearch 操作(GetHistograms および GetLogs)を使用してクエリできるようになるまでの遅延は、ログタイプによって異なります。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 秒以内に完了します。
Log Service は、ログ時刻(フィールド名: __time__)とサーバー受信時刻(フィールド名: __tag__:__receive_time__)の差を計算します。差が (-180 秒, 900 秒] の有効値内にある場合、そのログはリアルタイムデータです。差が [-7x86400 秒, -180 秒) の有効値内にある場合、そのログは既存データです。
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 |
必須 |
部分区間の開始時刻。値は、協定世界時 (UTC) 1970 年 1 月 1 日 00:00:00 からの経過秒数を表す UNIX タイムスタンプです。 |
1409529600 |
| to |
integer |
必須 |
部分区間の終了時刻。値は、協定世界時 (UTC) 1970 年 1 月 1 日 00:00:00 からの経過秒数を表す UNIX タイムスタンプです。 |
1409569200 |
| topic |
string |
任意 |
ログのトピック。 |
topic |
| query |
string |
任意 |
クエリ文。クエリ文のみがサポートされています。分析文はサポートされていません。クエリ構文の詳細については、「クエリ構文」を参照してください。 |
with_pack_meta |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
array |
|||
|
object |
|||
| from |
integer |
部分区間の開始時刻。値は、協定世界時 (UTC) 1970 年 1 月 1 日 00:00:00 からの経過秒数を表す UNIX タイムスタンプです。 時間間隔は左閉右開の原則に従います。区間には開始時刻が含まれますが、終了時刻は含まれません。from と to の値が同じ場合、区間は有効ではなく、関数はエラーを返します。 |
1409529600 |
| to |
integer |
部分区間の終了時刻。値は、協定世界時 (UTC) 1970 年 1 月 1 日 00:00:00 からの経過秒数を表す UNIX タイムスタンプです。 時間間隔は左閉右開の原則に従います。区間には開始時刻が含まれますが、終了時刻は含まれません。from と to の値が同じ場合、区間は有効ではなく、関数はエラーを返します。 |
1409569200 |
| count |
integer |
部分区間で照会されたログの間隔。 |
2 |
| progress |
string |
部分区間のクエリ結果が完全であるかどうかを示します。有効な値: Complete: クエリが完了しており、返された結果も完全です。 Incomplete: クエリは完了していますが、返された結果は不完全です。完全な結果を取得するには、リクエストを繰り返してください。 |
Complete |
例
成功レスポンス
JSONJSON
[
{
"from": 1409529600,
"to": 1409569200,
"count": 2,
"progress": "Complete"
}
]
エラーコード
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。