GetHistograms 操作を呼び出して、指定された Logstore 内で検索条件に一致するログの分布を照会できます。
操作説明
インターフェイスの説明
リクエスト構文のホストは、プロジェクト名と Simple Log Service のエンドポイントで構成されます。ホストでプロジェクトを指定する必要があります。
レスポンスの部分区間は一貫して分割されます。リクエストされた時間範囲が同じであれば、レスポンスの部分区間の分割も同じになります。
クエリ内のログ数が大幅に異なる場合、Simple Log Service アプリケーションプログラミングインターフェイス (API) は、完全な結果を取得するために必要な呼び出し回数を予測できません。各レスポンスの 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 秒です。99.9% の場合、データは 1 秒以内に検索可能になります。
履歴データ:ログのタイムスタンプが、サーバーの現在時刻を基準として [-7 × 86400 秒, -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 × 86400 秒, -180 秒) の範囲内にある場合、データは履歴データです。
Simple Log Service は、GetHistograms クエリを使用するための Java ソフトウェア開発キット (SDK) の例を提供しています。詳細については、「GetHistograms を使用してログの分布をクエリする」をご参照ください。
今すぐお試しください
テスト
RAM 認証
リクエスト構文
GET /logstores/{logstore}/index?type=histogram HTTP/1.1
パスパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| logstore |
string |
必須 |
Logstore の名前。 |
test-logstore |
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| project |
string |
必須 |
プロジェクトの名前。 |
ali-test-project |
| from |
integer |
必須 |
部分区間の開始時刻。値は、1970-01-01 00:00:00 UTC から経過した秒数を表す UNIX タイムスタンプです。 |
1409529600 |
| to |
integer |
必須 |
部分区間の終了時刻。値は、1970-01-01 00:00:00 UTC から経過した秒数を表す UNIX タイムスタンプです。 |
1409569200 |
| topic |
string |
任意 |
ログの Topic。 |
topic |
| query |
string |
任意 |
検索文。検索文のみがサポートされ、分析文はサポートされていません。検索文の構文の詳細については、「検索構文」をご参照ください。 |
with_pack_meta |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
array |
|||
|
object |
|||
| from |
integer |
部分区間の開始時刻。値は、1970-01-01 00:00:00 UTC から経過した秒数を表す UNIX タイムスタンプです。 時間範囲は、左が閉じて右が開いている半開区間です。つまり、部分区間には開始時刻は含まれますが、終了時刻は含まれません。from と to の値が同じ場合、区間は無効となり、エラーが返されます。 |
1409529600 |
| to |
integer |
部分区間の終了時刻。値は、1970-01-01 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"
}
]
エラーコード
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。