Splunk系列之Splunk字段提取篇
一、簡單概述
Splunk 是一款功能強大的搜索和分析引擎,而字段是splunk搜索的基礎,提取出有效的字段就很重要。
當Spklunk開始執行搜索時,會查找數據中的字段。與預定義提取指定字段不同,Splunk可以通過用戶自定義從原始數據中動態提取字段。
這里,我們演示一下如何利用Splunk來提取字段。
二、字段提取器
Splunk提供了一種非常簡單的方式來提取字段,就是使用字段提取器,即使在你完全不了解正則表達式的情況下,也可以輕松完成字段提取。
2.1 訪問字段提取器
執行事件搜索,左邊欄往下,單擊提取新字段,進入字段提取器。
2.2 選擇示例
在事件列表中,選擇一個需要進行字段提取的示例事件。
2.3 選擇方法
提供了兩種字段提取的方法:正則表達式和分隔符。正則表達式主要用于非結構化數據;而基于表格的結構化數據,使用分隔符即可。
2.4 選擇字段
選擇需要字段提取的值,下面會出現對話框,對字段名稱進行命名。一般我們也可手動編輯正則表達式進行調整。
2.5 驗證
通過預覽,以確認事件列表的匹配程序,
2.6 保存
在這一步,可以對提取名稱和權限進行設置,點擊完成來保存提取。
三、新字段提取
在Splunk Web中,提供了一種快速設置字段提取的方式,只需提供正則表達式,就可以直接完成新字段提取。
3.1 新字段提取
(1)設置→ 字段提取→新字段提取
設置名稱、sourcetype,寫入正則表達式,點擊保存即可。
3.2 查看字段提取規則
在字段提取頁面中,搜索關鍵詞,可找到剛才設置的字段提取規則。
四、使用搜索命令提取字段
通過搜索命令以不同方式提取字段,如rex、extract、xpath等。但這種方式僅適用于搜索過程中的返回的中間結果,無法新建字段重復使用。
sourcetype="secure-2" port "failed password"
| rex field=_raw "(?P<user>\w+)\sfrom\s(?P<ip>[^ ]+)"
| table user,ip