Log Service掃描(Scan)功能支援免配置索引進行目標欄位的掃描,用於查詢和分析相關日誌。掃描功能包含掃描查詢和掃描分析,本文介紹掃描功能的相關操作和樣本。
前提條件
操作步驟
在Project列表地區,單擊目標Project。
在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。
在輸入框中,輸入掃描語句。
掃描語句格式為
查詢語句 | SPL語句
或查詢語句 | set session mode=scan; 分析語句(標準SQL)
。在頁面右上方設定掃描的時間範圍。
您可以設定相對時間、整點時間和自訂時間。 此處設定的掃描時間最小粒度為分鐘。
自動掃描
自動掃描和翻頁功能僅適用於掃描查詢操作。
執行一次掃描查詢操作後,如果提示本次未掃描得到結果,您可以單擊表徵圖,使系統自動掃描查詢日誌,直到返回符合掃描條件的日誌或掃描次數達到20次。
在自動掃描對話方塊中,將展示自動掃描的進展。
翻頁說明
當您執行一次翻頁操作時,Log Service會對應執行一次掃描查詢操作,用於保證掃描結果的連續性。
每次預設最多掃描100,000條日誌,在翻頁過程中,可能出現某頁中顯示的日誌數量少於每頁顯示對應的數量,但仍支援向後翻頁。即表示當前查詢的100,000條日誌中,滿足掃描條件的日誌數量少於每頁顯示對應的數量。
例如日誌總數為200,000條,每頁支援顯示20條,當您執行一次掃描操作後,只返回15條且向後翻頁功能可用,此時說明前100,000條日誌中只有15條日誌滿足掃描條件。您可以執行翻頁操作,Log Service會自動在後100,000條日誌中,執行第二次掃描操作,並返回合格日誌。
樣本
通過掃描功能查詢請求狀態為成功的請求對應的日誌。
掃描語句
* | where Status='Success'
掃描結果
通過掃描功能查詢一個檔案在一個時間點對應的日誌。
掃描語句
* | where file = 'file:Android' | where time ='[2024-04-24T10:07:27.427014479]'
掃描結果
通過掃描功能計算各個請求狀態對應的請求數量。
掃描語句
說明掃描分析功能,需要在SQL前面加上
set session mode=scan;
,表示使用掃描模式* | set session mode=scan; SELECT Status, count(*) AS PV GROUP BY Status
掃描結果
API調用
您可以通過GetLogs介面使用掃描功能。更多資訊,請參見GetLogs - 查詢日誌庫日誌。
如果您要使用掃描功能,需要在query參數的分析語句中添加set session mode=scan;
,表示開啟掃描功能,例如* | set session mode=scan; select count(*) as pv
。