本文介紹日誌查詢常見問題例如判斷日誌的來源機器、搜尋IP地址、雙重條件查詢、查詢日誌的方式等。
如何在查詢時判斷日誌的來源機器
如何在日誌資料中搜尋IP地址?
-
查詢某個IP地址。
__tag__:__client_ip__:192.0.2.1 -
查詢192.0.2.開頭的日誌。
__source__:192.0.2.* -
查詢包含
192.168.XX.XX的日誌。還可以使用Regex進行模糊查詢,請參見如何模糊查詢日誌?。* | select * from log where key like '192.168.%.%'
如何完成雙重條件查詢?
需要使用兩個條件查詢日誌時,只需同時輸入兩個語句即可。
例如,需要在LogStore中查詢資料狀態不包含OK,也不包含Unknown的日誌。直接搜尋not OK not Unknown即可得到合格日誌。
Log Service提供哪些渠道查詢日誌?
Log Service提供如下三種方式查詢日誌:
通過SDK可正常查詢,但進行SQL分析時出現執行逾時或網路錯誤問題,如何解決?
該問題可能是因為您用戶端的網路防火牆攔截了帶SQL分析關鍵字的請求。
建議您將訪問網域名稱切換為HTTPS形式,以排查用戶端網路防火牆問題。
為什麼查詢和分析時,欄位值會被截斷?
Log Service查詢和分析的欄位值長度存在如下限制。
-
查詢時,單個欄位值最大長度為512 KB(524,288 位元組),超出部分不參與查詢。
-
分析時,預設支援的欄位值最大長度為2 KB(2,048位元組),最大可調整為16 KB(16,384位元組)。
當單個欄位值長度超過最大長度時,超出部分被截斷,不參與查詢和分析。
設定欄位的最大長度
您可通過修改分析規則調整欄位最大長度限制,該配置修改僅對新增採集的日誌資料生效(歷史已儲存資料不受影響)。
在Project列表地區,單擊目標Project。
在頁簽中,單擊目標Logstore。
-
單擊。
-
在查詢分析頁面底部設定統計欄位(text)最大長度,取值範圍為64~16384位元組。
如何分析停用字詞段?
如果您要分析日誌但未提前建立索引或無法建立索引,可參考以下方式解決。
-
建立或重建索引
-
開啟掃描模式
如果您無法建立索引,可以開啟掃描(Scan)模式,通過掃描分析功能,分析日誌。具體操作,請參見掃描(Scan)分析文法、掃描(Scan)日誌。
如何修改SQL查詢語句輸出結果的行數?
在執行查詢分析語句時,Log Service預設會在查詢分析語句結尾追加limit 100,您可以使用LIMIT子句修改返回結果行數,具體操作請參見LIMIT子句。
SLS 索引與資料庫索引有什麼區別?SLS 能否自動識別使用者資訊?
SLS 索引與資料庫索引的區別
SLS 索引與資料庫索引(如 MySQL、PostgreSQL 中的索引)在目的上有相似之處,但實現機制和應用情境不同:
-
SLS 索引:主要用於加速日誌查詢與分析。通過全文索引或欄位索引對日誌內容進行切分和結構化處理,支援關鍵詞檢索和 SQL 分析。SLS 支援全文索引(全文內容切分檢索)和索引值索引(結構化欄位檢索)。
-
資料庫索引:主要基於 B 樹等資料結構,用於加快資料庫表中特定記錄的尋找速度,通常不適用於日誌類海量資料的全文檢索索引和即時分析情境。
SLS 能否自動識別和關聯日誌中的使用者資訊?
SLS 不會自動識別和關聯日誌中的使用者資訊。使用者資訊必須作為日誌欄位存在於日誌內容中,SLS 才能按該欄位進行查詢、分析或下載。如果日誌中沒有包含使用者資訊的欄位,SLS 無法知道日誌歸屬於哪個使用者。
如需按使用者維度查詢日誌,請在採集日誌時將使用者資訊作為日誌欄位一併寫入,然後在索引配置中為該欄位建立索引並開啟統計功能。