本文介紹短語查詢的語法、使用限制和示例。
概述
日志服務查詢采用的是分詞法,例如查詢語句為abc def
,將匹配所有包含abc
和def
的日志,不區分先后順序,無法精準匹配目標短語。現在日志服務推出短語查詢,用于精準匹配一段短語。
日志服務接收到短語查詢請求后,執行流程主要分為如下兩步:
先執行對應的非短語查詢語句進行日志查詢。例如執行
#"abc def"
語句,實際先執行"abc def"
語句。說明為避免查詢量太大,目前執行短語查詢時,限制步驟1最多返回10,000條結果。
在上述查詢結果中再挑選符合短語查詢條件的日志,并返回最終的查詢結果。
語法
字段查詢
key:#"abc def"
全文查詢
#"abc def"
使用限制
短語查詢的結果只支持向前、向后的連續翻頁,不支持隨機跳轉。
執行短語查詢后,日志分布直方圖展示的是非短語查詢的結果。
短語查詢不支持搭配模糊查詢。
短語查詢語句中必須添加半角雙引號("")。
短語查詢語句中不支持搭配not語句,即不支持
not #"abc def"
。短語查詢語句中不支持搭配分析語句,即不支持
#"abc" | select ***
。因此使用短語查詢時,也不支持快速分析功能。
翻頁說明
當您執行一次翻頁操作時,日志服務會對應執行一次短語查詢操作,用于保證查詢結果的連續性。
短語查詢每次最多查詢10,000條日志,在翻頁過程中,可能出現某頁中顯示的日志數量少于每頁顯示對應的數量,但仍支持向后翻頁。即表示當前查詢的10,000條日志中,滿足短語查詢條件的日志數量少于每頁顯示對應的數量。
例如日志總數為20,000條,每頁支持顯示100條,當您執行一次短語查詢后,只返回89條且向后翻頁功能可用,此時說明前10,000條日志中只有89條日志滿足短語查詢條件。您可以執行翻頁操作,日志服務會自動在后10,000條日志中,執行第二次短語查詢,并返回符合條件的日志。
示例
例如您要查詢包含redo_index/1
的日志。
使用非短語查詢語句
"redo_index/1"
,日志服務將根據全文索引匹配部分關鍵詞。使用短語查詢語句
#"redo_index/1"
,日志服務將匹配完整的短語redo_index/1
。