天天看點

《Splunk智能運維實戰》——1.2 索引檔案和目錄

本節書摘來自華章計算機《splunk智能運維實戰》一書中的第1章,第1.2節,作者 [美]喬史·戴昆(josh diakun),保羅r.約翰遜(paul r. johnson),德萊克·默克(derek mock),譯 宮鑫,康甯,劉法宗 ,更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。

從檔案和目錄輸入資料是向splunk導入資料最常用的方法。這種類型的輸入主要是為了索引日志檔案。幾乎每個應用程式或系統都會産生日志檔案,當中包括了我們想搜尋和制作報表的很多資料。

splunk能夠持續監控寫入現有檔案的新資料或添加到目錄中的新檔案,并且能夠實時索引這些資料。根據生成日志檔案的應用類型不同,可以将splunk設定為監控單一檔案(基于其位置)或掃描整個目錄并監控其中的所有檔案。當生成的日志檔案包含唯一的檔案名(比如名字中含有時間戳)時,後一種配置更常使用。

本節将學習如何配置splunk來持續監控并索引splunk伺服器上的一個日志檔案,這個日志檔案的内容會不斷增加。本節将專門展示如何監控并索引linux系統上的messages日志檔案(/var/log/messages)。然而,同樣的方法也适用于windows系統上的日志檔案,本書也提供了一個示例檔案。但請不要用這種方法索引windows事件日志,因為splunk有專門的windows事件輸入法。

做好準備

要進行本節的操作,需運作splunk enterprise伺服器并且有權限通路讀取linux上的/var/log/messages檔案。沒有其他先決條件。如果使用的不是linux系統,并且/或者沒有權限通路 splunk伺服器上的/var/log/messages,要使用本書提供的cp01_messages.log檔案并将其加載到splunk伺服器上一個可通路的目錄中。

如何操作

按下列步驟監控并索引檔案内容。

1 . 登入splunk伺服器。

2 . 從右上角的主啟動器,單擊“添加資料”按鈕。

《Splunk智能運維實戰》——1.2 索引檔案和目錄

3 . 在“選擇資料類型”清單中,單擊“檔案或檔案目錄”。

《Splunk智能運維實戰》——1.2 索引檔案和目錄

4 . 在“索引此splunk伺服器上的所有檔案”選項中單擊“下一步”按鈕。

《Splunk智能運維實戰》——1.2 索引檔案和目錄

5 . 選擇“索引前預覽資料”并輸入日志檔案路徑(/var/log/messages或cp01_messages.log檔案的位置)并單擊“繼續”按鈕。

《Splunk智能運維實戰》——1.2 索引檔案和目錄

6 . 選擇“開始一個新的源類型”并單擊“繼續”按鈕。

《Splunk智能運維實戰》——1.2 索引檔案和目錄

7 . 假如你使用本書提供的檔案或本地的/var/log/messages檔案,資料預覽将展示正确分行後的事件及時間戳标志。單擊“繼續”按鈕。

8 . 會彈出“預覽設定”框。在源類型輸入linux_messages,單擊“儲存源類型”按鈕。

《Splunk智能運維實戰》——1.2 索引檔案和目錄

9 . 會出現“源類型已儲存”的提示框,選擇“建立輸入”按鈕。

《Splunk智能運維實戰》——1.2 索引檔案和目錄

10 . 在“源”部分,選擇“從splunk本次通路的檔案或目錄中持續索引資料”,并填寫資料路徑。

《Splunk智能運維實戰》——1.2 索引檔案和目錄

如果隻是想一次性加載某個檔案,可選擇“上傳并索引檔案”。這個選項适合于索引一組資料到splunk,既可用來回填一些缺失或不完整的資料,也可僅僅為了利用其搜尋和報表工具。

11 . 暫且忽略其他設定,直接單擊“儲存”。然後,在下一個界面中,點選“開始搜尋”。在搜尋欄,輸入下列搜尋,時間範圍設定為“全部時間”:

《Splunk智能運維實戰》——1.2 索引檔案和目錄

在本節中,可直接使用常見的系統日志源類型,不過,建立新的源類型往往是更好的選擇。根據資料源不同,系統日志格式可能差異很大。因為像提取字段這樣的知識對象是建立在源類型之上的,為所有對象使用單一的系統日志源類型可能會較難搜尋到所需的資料。

工作原理

當添加一個新的檔案或目錄來導入資料時,也就是在背景向inputs.conf檔案添加新的配置節。splunk伺服器可包含一個或多個inputs.conf檔案,它們位于$splunk_home/etc/ system/local或splunk 應用程式的local目錄。

splunk使用的輸入類型是監控器,并被設定為指向某個檔案或目錄。如果設定對一個目錄進行監控,目錄中的所有檔案都會被監控。當splunk監控檔案時,它會首先從頭索引所有能讀取的資料。完成後,splunk将保留上次讀取資料的位置記錄,如有任何新的資料寫入檔案,它将讀取這個資料并繼續記錄。這個過程幾乎和在unix作業系統下使用tail指令相同。如需要監控一個目錄,splunk也會提供很多附加的配置選項,比如将不需要splunk索引的檔案列入黑名單。

更多内容

除了可按照本節的方法通過splunk的web界面添加輸入資訊來監控檔案和目錄,還有其他方法來快速地添加多種輸入資訊。這些方法允許我們自定義splunk提供的多種配置

選項。

通過cli(指令行界面)添加檔案或目錄資料輸入

除了通過gui(圖形使用者界面)之外,還可通過splunk cli(command-line interface)來添加檔案或目錄輸入。進入$splunk_home/bin目錄并執行下列指令(将需要監控的檔案或目錄替換成你自己的)。

unix系統:

《Splunk智能運維實戰》——1.2 索引檔案和目錄

windows系統:

《Splunk智能運維實戰》——1.2 索引檔案和目錄

通過inputs.conf添加檔案或目錄輸入

另一種添加檔案和目錄輸入的常用方法是手動将其直接添加至inputs.conf配置檔案中。該方法常用于大環境中或配置splunk 轉發器來監控終端上的檔案或目錄。

編輯$splunk_home/etc/system/local/inputs.conf并添加輸入。添加完輸入後,需要重新開機splunk來識别更改。

《Splunk智能運維實戰》——1.2 索引檔案和目錄
《Splunk智能運維實戰》——1.2 索引檔案和目錄

如需進行多個輸入,編輯inputs.conf通常可以更快地添加新檔案和目錄來監控。編輯inputs.conf時,要確定使用正确的文法,并重新開機splunk來使修改生效。此外,在inputs.conf檔案中設定源類型是指定源類型的最佳做法。

通過splunk cli一次性索引資料檔案

除了從splunk gui中選擇“上傳并索引檔案”進行操作之外,也可使用很多cli功能來執行一次性批量加載資料。

使用oneshot指令告知splunk檔案位置及所用參數,比如源類型:

《Splunk智能運維實戰》——1.2 索引檔案和目錄

另一種方法是将希望索引的檔案放入splunk spool目錄,$splunk_ home/var/spool/splunk,然後使用spool指令添加檔案:

《Splunk智能運維實戰》——1.2 索引檔案和目錄

如使用windows系統,應省略splunk指令前的“./”。

索引windows事件日志

splunk針對一些源類型有專門的inputs.conf配置方式,其中包括監控windows事件日志。通常來說,把splunk通用轉發器(uf)安裝在windows伺服器上,配置後可轉發windows事件至splunk索引器。對inputs.conf進行如下配置來實時監控windows安全日志、應用程式日志和系統事件日志:

《Splunk智能運維實戰》——1.2 索引檔案和目錄

除非另外指定索引,否則事件資料預設會進入主索引。

另參見

《Splunk智能運維實戰》——1.2 索引檔案和目錄

繼續閱讀