閱讀576 返回首頁    go 財經資訊


查詢日誌__logsearch_用戶指南_日誌服務-阿裏雲

日誌服務的“索引”模式能讓用戶在其Logstore上快速查詢海量的日誌數據,檢索出用戶真正感興趣的日誌數據。日誌寫入Logstore後,用戶通過控製台為Logstore內的日誌內容創建索引,索引和查詢特點如下:

  • 大規模:支持PB/Day數據量
  • 低延時:數據寫入3秒內既可以查詢
  • 秒級返回:一秒可以過10億級日誌

注意點:

  • 消費日誌與查詢日誌都意味著“讀取”日誌,兩者區別見這裏
  • 在查詢特定日誌後,使用Logtail用戶可以使用上下文查詢功能

查詢結果

用戶可以通過管理控製台、SDK或者API查詢日誌。無論使用何種方式查詢日誌,用戶都必須指定查詢的Project、Logstore(且Logstore必須屬於所指定的Project)即查詢時間區域(該時間區域不可以超過Logstore的日誌存儲周期)。除此之外,用戶還可以指定查詢的日誌主題、返回的最大日誌條數及返回日誌的Offset等信息。

為適應用戶對於日誌查詢的不同需求,日誌服務提供兩種類型的查詢,即查詢日誌分布和查詢原始日誌,具體如下:

  • 查詢日誌分布(GetHistograms):查詢符合查詢條件的日誌數目及這些日誌在整個查詢時間區域上的分布情況(即每個子時間區域上有多少條符合查詢條件的日誌),但並不返回具體的日誌原始數據。
  • 查詢原始日誌(GetLogs):查詢符合查詢條件的日誌並返回所有的原始日誌數據。

查詢延時

日誌服務內部對於寫入Logstore的日誌按照其日誌時間戳劃分為實時數據和曆史數據。具體定義及其對查詢的結果影響如下

  • 實時數據:日誌中時間點為服務器當前時間點(-180秒,900秒],例如日誌時間為UTC 2014-09-25 12:03:00,服務器收到時UTC 2014-09-25 12:05:00,則該日誌在寫入Logstore時實時建立索引,且從寫入Logstore到可以查詢到的延時在3秒內。
  • 曆史數據:日誌中時間點為服務器當前時間點[-7 x 86400秒, -900秒),例如日誌時間為UTC 2014-09-25 12:00:00,服務器收到時UTC 2014-09-25 12:05:00,則該日誌被作為曆史數據處理。這類日誌從寫入Logstore到可以查詢到的延時最多為5分鍾。

(如果用戶查詢需要檢索的日誌數據量很大時(如查詢時間跨度非常長,用戶日誌數據量很大等),則一次查詢請求無法檢索完所有數據。在這種情況下,日誌服務會把已有的數據返回給用戶,並在返回結果中告知用戶該查詢結果並不完整。如此同時,服務端會緩存15分鍾內的查詢結果。當查詢請求的結果有部分被緩存命中,則服務端會在這次請求中繼續掃描未被緩存命中的日誌數據。為了減少用戶合並多次查詢結果的工作量,日誌服務會把緩存命中的查詢結果與本次查詢新命中的結果合並返回給用戶。因此日誌服務可以讓用戶通過以相同參數反複調用該接口來獲取最終完整結果。)

使用控製台查詢日誌

日誌服務控製台提供和API及SDK同樣能力的日誌查詢功能。用戶可以參考日誌庫操作了解控製台上的查詢日誌界麵及交互方式。與此同時,控製台還提供了非常直觀的交互界麵幫助用戶查詢和理解查詢結果。具體如下:

  1. 提供圖形化的界麵(即柱狀圖)來展示查詢結果的分布情況。並用戶不同顏色的柱狀圖標示日誌查詢結果是否完整。
  2. 提供靈活的翻頁、排序機製幫助用戶瀏覽返回的日誌原始數據
  3. 提供直觀的交互方式讓用戶修正查詢條件。例如,通過在柱狀圖上拖拽的方式修改查詢時間範圍,或者點擊日誌原始數據上的關鍵字來添加添加查詢關鍵字。
  4. 提供上下文查詢功能幫助定位

使用SDK查詢日誌

日誌服務提供多種語言(Java、.NET、PHP和Python)的SDK,且這些語言的SDK都支持全功能的日誌查詢接口。關於SDK的更多信息請參考日誌服務SDK

使用API查詢日誌

日誌服務提供REST風格的API,基於HTTP協議實現。日誌服務的API同樣提供全功能的日誌查詢接口。具體參考請見日誌服務API

查詢語法

參見日誌查詢語法章節,索引參見索引設置章節。

最後更新:2016-12-12 16:55:15

  上一篇:go 索引設置__logsearch_用戶指南_日誌服務-阿裏雲
  下一篇:go 查詢方案(ELK/Hive)對比__logsearch_用戶指南_日誌服務-阿裏雲