Simple Log Service支援通過索引模式查詢和分析日誌。本文介紹索引,查詢和分析的基本概念。
索引
通常我們使用關鍵詞從原始日誌中檢索想要的內容,例如包含curl
的日誌:curl/7.74.0
。如果不進行切分,該日誌文本會作為一個整體,不能和關鍵詞curl
完全對應,因此不會被Simple Log Service檢索到。
為了便於檢索,需要將日誌切分成獨立、可搜尋的詞。日誌切分由分詞符實現,這些符號決定了日誌常值內容被切分的位置。以該日誌為例,使用分詞符\n\t\r,;[]{}()&^*#@~=<>/\?:'"
進行分割,得到的詞是curl
、7.74.0
。Simple Log Service基於切分出的關鍵詞建立索引。建立索引後,您才能對日誌進行查詢和分析。
Simple Log ServiceProject支援建立全文索引和欄位索引。如果您同時建立了全文索引和欄位索引,以欄位索引的配置為準。
全文索引
全文索引根據分詞符直接將整個日誌切分成多個text類型的詞語。建立全文索引後,可以通過關鍵詞進行查詢,例如查詢語句:Chrome or Safari
,查詢包括Chrome
或Safari
的日誌。
分詞符不支援中文,開啟包含中文選項,Log Service會自動按照中文分詞。
如果只配置全文索引,則只能使用全文檢索查詢功能。更多資訊,請參見查詢文法與功能。
欄位索引
欄位索引將日誌根據欄位名稱(KEY)進行區分,然後在欄位內使用分詞符進行分割。欄位索引支援text、long、double和JSON四種類型的資料。更多資訊,請參見資料類型。建立欄位索引後,可以指定欄位名稱和欄位值(Key:Value
)進行查詢,也可以使用SELECT語句。更多資訊,請參見欄位查詢。
如需對欄位進行查詢或分析(SELECT語句),必須建立欄位索引。欄位索引的優先順序高於全文索引,如果同時建立了全文索引和欄位索引,以欄位索引的配置為準。
text類型的欄位,可以使用全文檢索查詢語句、欄位查詢語句和分析語句(SELECT)。
如果未開啟全文索引,全文檢索查詢語句是從所有text類型的欄位中查詢結果。
如果已開啟全文索引,全文檢索查詢語句是從所有日誌中查詢結果。
long和double類型的欄位,可以使用欄位查詢語句和分析語句(SELECT)進行查詢和分析。
查詢與分析
Simple Log Service支援秒級查詢十億到千億層級的日誌,並支援通過SQL對查詢結果進行統計分析。查詢語句可單獨使用,分析語句必須與查詢語句一起使用,即分析功能是基於查詢結果或全量資料進行的。在Logstore中進行查詢和分析操作,請參見查詢與分析快速指引。
查詢簡介
查詢語句用於指定日誌查詢時的過濾規則,返回合格日誌。格式為:
查詢語句
,例如status: 200
。查詢條件可使用關鍵詞、數值、數值範圍、空格、
*
等。 如果為空白格或*
,表示無過濾條件。更多資訊,請參見查詢文法與功能。
分析簡介
查詢語句和分析語句以
|
分割。格式為:查詢語句|分析語句
,例如:* | SELECT status, count(*) AS PV GROUP BY status
。如需流量分析功能,則必須將日誌採集到Standard Logstore中,且在配置索引時開啟對應欄位的開啟統計開關。
分析語句對查詢結果或全量資料進行計算和統計。Log Service支援的分析函數和文法,請參見:
SQL函數:SQL函數通常用於對資料進行計算、轉換和格式化。例如,計算總和、平均值、字串操作、日期處理等。
SQL子句:SQL子句用於構建完整的SQL查詢或資料動作陳述式,決定資料的來源、條件、分組、排序等。
嵌套子查詢:嵌套子查詢是指將一個SELECT語句嵌套在另一個SELECT語句中,用於複雜的分析情境。
Logstore和MySQL聯集查詢分析:Log Service支援通過Join文法將Logstore和MySQL資料庫進行聯集查詢,並把查詢結果儲存到MySQL資料庫中。
相關文檔
建立索引:如需使用查詢或分析功能,必須建立索引。
重建索引:如需對歷史資料配置索引或修改索引時,可以使用重建索引功能。
查詢文法與功能:介紹查詢語句的基本用法以及更多進階功能。
SQL分析文法與功能:介紹SQL分析語句的常用函數以及子句。
使用SPL查詢和分析日誌:如需對日誌資料進行結構化資訊提取、欄位操作和資料過濾時,可以通過使用SPL語言(SLS Processing Language)來解決這些問題。
機器學習文法與函數:在日誌查詢分析中通過分析語句和機器學習函數調用機器學習演算法,分析某一欄位或若干欄位在一段時間內的特徵。
關聯外部資料源:可用於Log Service與MySQL資料庫、阿里雲Object Storage Service、託管的CSV檔案進行關聯。
Log Service與Elasticsearch的相容性:Log Service提供Elasticsearch相容介面,支援您將日誌採集到Log Service後,仍可以沿用Elasticsearch的查詢方案。