splunk 搜索語法
全文搜索
搜索框直接輸入”搜索詞“
purchase
查找匹配詞”purchase“
字段搜索
字段名=”搜索詞“
source="Sampledata.zip:./apache3.splunk.com/access_combined.log"
查找數據來源為"Sampledata.zip:./apache3.splunk.com/access_combined.log"
通配符搜索
source="Sameledata.zip:.apache*"
查找數據來源為apache開頭的所有來源
邏輯組合搜索
source="Sampledata.zip:./apache3.splunk.com/access_combined.log" purchase NOT 200
查找數據來源為"Sampledata.zip:./apache3.splunk.com/access_combined.log" 並且字符串匹配詞 "purchase" 並且字符串中不匹配200
嵌套搜索
查找錯誤碼
error OR failed OR (souretype = access*(404 OR 500 OR 503))
當然你可以加上status字段
(sourcetype=access*(status=404 OR status=500 OR status=503)) host="apache3.splunk.com"
使用管理命令
source="Sampledata.zip:./apache*" | top 10 product_id
獲取最多訪問的10個產品id
source="Sampledata.zip:./apache*" | top limit=1 clientip
獲取消費最多的客戶端ip
source="Sampledata.zip:./apache*" action=purchase clientip=233.77.49.50|stats count, values(product_id) by clientip
獲取指定客戶端IP購買的產品,並匯總數量
source="Sampledata.zip:./apache*" category_id = flowers| statsdc(clientip)
統計有多少用戶購買了鮮花類的產品
source="Sampledata.zip:./apache*" category_id=flowers| stats count BY clientip
每個獨立用戶購買鮮花的數量
source="Sampledata.zip:./apache*" category_id=flowers| stats count AS "購買鮮花數量" BY clientip |rename clientip AS 客戶
我們可以對結果進行重命名
子搜索
子搜索部分使用[]起來,中括號的部分會先被執行,然后再執行外面搜索部分。
子搜索命令需用search開頭
子搜索的速度稍微慢一些
source="Sampledata.zip:./apache*" action=purchase [search sourcetype=access_* action=purchase|top limit=1 clientip|table clientip] | stats count, values(product_id) as product_id by clientip |rename count AS "購買數量",product_id AS "購買產品內容" clientip AS "vip用戶"
一條搜索語句實現,獲取指定客戶端IP購買的產品,並匯總數量
如果你對搜索命令比較敢興趣,你也可以參考文檔
@see http://docs.splunk.com/Documentation/Splunk/latest/SearchReference/SearchCheatsheet
當然,還有搜索語法和SQL語句命令對照表
http://docs.splunk.com/Documentation/Splunk/latest/SearchReference/SearchCheatsheet