導航:首頁 > 程序命令 > splunk搜索命令

splunk搜索命令

發布時間:2023-05-12 17:48:42

① Linux用戶命令記錄

很多情況下我們需要記錄用戶執行過的命令,不管是root還是其他普通用戶,我們可以通過以下方式來記錄。

PROMPT_COMMAND會在命令執行前執行。
$(who am i |awk '{print \$2,\$5}') 會輸出登錄用戶用的tty和登錄伺服器的遠程電腦IP或者主機名。
$PWD 是內建變數,顯示當前執行命令的工作目錄。
history 1 | { read x cmd; echo ${cmd}; 會輸出最後一條歷史命令中的執行信息。

為了不讓用戶修改變數,使用 declare -rx 命令定義了只讀環境變數。這里要注意使用 readonly 命令也可以定義只讀變數,但是用戶用env命令看不到,只有用 export PROMPT_COMMAND 命令將變數設置為環境變數後才能看到。

變數加到 /etc/bashrc 是因為用戶登錄後會載入這里的配置,包括 sudo sudo su sudo su - su root su - root 。如果加到其他文件里則部分命令後就不會載入變數,自行嘗試。

修改rsyslog是可以自定義日誌輸出的文件路徑和名字,用 logger -p 這個命令配合使用。

新增logrotate配置則是需要切割日誌,防止單個日誌文件太大,以及做好切割備份,方便查詢。

【一】

在 /etc/profile 最後添加如下行,則日誌會直接輸出到 messages 日誌里。

這種方式:不定義日誌格式,直接將日誌寫到messages日誌文件里,和其他日誌放一起,但是可以指定日誌標簽,方便檢索。
缺點是(1)會導致日誌增大,並且用戶提權後因-t標簽的存在,導致不會記錄提權前的用戶。(2)不能自定義日誌路徑。

【二】

缺點:用戶可以刪除日誌文件。
因為普通用戶和root都要往日誌文件里寫,所以需要給普通用戶加一個附加組;並且如果日誌文件不存在,普通用戶登錄後也需要新建,所以普通用戶必須有日誌文件父目錄的寫許可權。為了能讓所有普通用戶都可以寫,就給Command目錄加了SGID許可權以及修改目錄屬組為audit。這樣普通用戶在這個目錄下創建的日誌文件的屬組會自動繼承Command目錄的屬組,也就是audit。 (umask 002 && touch $HISTORY_FILE) 命令則是因為root用戶生成的日誌文件許可權是644,屬組沒有寫許可權。所以這里用 啟動子shell並修改umask的方式生成日誌文件。這樣就不會修改root默認的 0022 的umask。
其他審計軟體:
https://www.splunk.com/ 免費2個月

② Splunk ITSI 實現原理概述

最近研究了一段時間Splunk ITSI,SPLUNK已經成為了一個150億美金的公司。產品做的很有特點,UI也讓人耳目一新。本篇描述了我對ITSI的一些研究筆記和其背後實現思路的探討,希望對讀者能有一些幫助。

一、 實體

實體本質上由手動錄入的標題、key-value鍵值對組成,鍵值對分為別名(alias)和信息域(info field)兩類。這兩類的區別是:Alias用於唯一標識實體也就是用於分組和搜索。info用於補充實體的屬性。Alias和info均可能用作參數輸入到後續的實體展示中。實體的建立如下圖:

實體的展示如下:

實體輸入的時候如果重復了,splunk好像不負責去重。這樣會導致分組的時候,只會關聯第一個實體。

每一個實體會生成一個唯一id。

(一) 實體如何跟服務肆鍵滑關聯的?

實體跟服務的關聯是非常鬆散的,並且實體在Service中是optional的。即使定義了實體,服務也不一定局限於這些實體。(Entity Rules allow for the optional, dynamic filtering of KPIs and can help in root cause analysis. A service need not define any Entity Rules and is not limited to only the entities matching Entity Rules.)簡言之,服務主要跟KPI相關,一個KPI可以設置是否由定義的實體所約束,這個後面裂臘再展開。

一個服務裡麵包含多少實體,主要由RULEs來過濾。RULEs如下所示:

(二) 實體使用的場景有哪些

配置KPI,可以按照實體分組,還可以按照alias過濾。

二、 KPI

(一) KPI Base Search定義了什麼

1. KPI的名稱

2.通過spl語句描述的數據源

3.定時周期,計算窗口,監控lag(把數據從發生到入庫的延遲也考慮進去,否則kpi算不準)

4. 聚合

a)是否根據Entity分組,只能定義

b)是否filter Entity、是否

三、 SPL需要增強的函數

(一) aggregate_raw_into_service

l例子:aggregate_raw_into_service(count, host)

l 參數:

1. 聚合模式

2. 目標欄位

l 輸出欄位:

1.聚合結果alert_value

2.聚合時間_time

3.定義實體的欄位名entity_key(因為沒有定義實體,所以是static值service_aggregate)

4.定義實體的欄位名entity_title(static值service_aggregate)

5. is_entity_defined 0

6. is_service_aggregate 1

l記錄條數 1條

(二) aggregate_raw_into_entity

l例子:aggregate_raw_into_entity(count, 4xx_error, application_server)

l 參數

1. 聚合模式

2. 目標欄位

3. 亮頌分組欄位

l 輸出欄位

1.聚合結果alert_value

2.聚合時間_time

3.分組欄位名(本例中就是application_server)

(三) match_entities

l跟在aggregate_raw_into_entity後面,例子:match_entities(application_server)

l 參數

n 唯一標識實體的欄位

l 輸出欄位

1. entity_id

2. entity_title

3. is_entity_defined 1

4. is_service_aggregate 0

5. serviceid

(四) aggregate_entity_into_service

l例子:aggregate_raw_into_service(avg)

l 參數

1. 聚合模式

l 輸出欄位

1. aggregate_raw_into_service和aggregate_raw_into_entity輸出欄位和結果的累加

2. is_all_entities_in_maintenance

(五) assess_severity

l嚴重性評估,例子:assess_severity(bc8f2697-39f0-4d8e-ac77-91a2999b2a9c, d938af27a490feac9955f338, true, true)

l參數

1. serviceid

2. Kpiid

l輸出欄位

1. aggregate_entity_into_service的輸出欄位與結果

2. Alert_color

3. Alert_error

4. Alert_level

5. Alert_period

6. Alert_serverity

四、 Multi KPI Alerts

選擇多個指標,根據每個指標的權重進行加權。

這種搜索又稱為correlation search。

五、 GlassTable

GlassTable的概念相對簡單,KPI的集合

六、 Deep Deives

(一) Metric lane

根據搜索產生統計指標

(二) Event lane

根據搜索產生event指標

(三) KPI lane

直接選擇已經定義好的kpi指標

③ 如何使用VMware ESX基礎架構中的VI Client搜索工具

用戶終究會想知道VMware工作環境中虛擬機的一些特性,諸如哪個虛擬機是配置來為特定數量RAM服務等。雖然成功地使用虛擬環境需要知道某些工作如何進行,但是VI Client仍然提供了幾種在基礎架構中搜索的方法,目前也有一些提供增強搜索功能的第三方選擇。在本文中,TechTarget中國的特約虛擬化專家David Davis首先回顧一下這些第三方選擇;然後針對特定需求介紹如何使用VI Client在VMware基礎架構進行搜索。


在VMware內搜索的內容


VMware基礎架構能夠以較快速度增長,更多伺服器、更多虛擬機、更多預定任務和更多配置警告等。用戶最終還是需要了解一些知識,或許不能夠或者不知道如何去做。下面是一些用戶可能希望知道答案的問題:


•哪個虛擬機為虛擬機RAM配置512MB內存?

•哪個虛擬機沒有安裝VMware工具?

•哪個宿主系統有兩個以上CPU?

•說明中有工作「bob」產生的警告嗎?

•有人為幫助工作台組創建一個安全形色嗎?

•這周用戶管理員執行哪些工作?

正如我以前提及過一樣,使用VI Client內置過濾器功能可以找到這些問題的答案,我也將告訴讀者怎樣去找問題答案。首先我們還是要討論一下VMware基礎架構內搜索的前景以及一些第三方提供的內容。


VMware基礎架構內搜索的前景


在2008年虛擬機世界中我並沒有看到比較重要的宣布,在VMware ESX新一代版本和VMware基礎架構的每一次演示中,VI Client頂部都有一個顯著的搜索條。對我來講,這個搜索條讓我想起IE或者火狐瀏覽器中的Google搜索條,這個搜索條在VI Client每一個單獨窗口上都有。我並不知道這個搜索條可以搜索到的內容以及其限制可能是什麼,我們可以推斷出VMware已經意識到在VI Client內提高搜索性能的必要性,VMware也意識到當前的過濾和搜索功能都需要改進,所以在即將發布的ESX新一代版本和VI Client中改進了搜索功能。我們也可以推斷出很多第三方公司也為VMware基礎架構的搜索功能提供了很大程度改進,VMware的工程師們也認識到這正是他們自己可以做的事情。


提供搜索功能的第三方選擇


確實有一些可以在用戶的VMware基礎架構中搜索的第三方選擇(如有遺漏還請見諒),下面是我列舉的一些:


Splunk for VMware


Splunk以日誌管理出名,但是該公司試圖從其收集的數據中給出問題的答案。最近,該公司開始為主機和虛擬機收集VMware數據信息。現在可以提供「IT搜索」,允許用戶搜索VMware相關數據信息。然而,Splunk所做的工作不僅僅是搜索。也可以做規劃、最優化、監控性能以及做整個IT基礎架構根源問題分析等方面的工作,所以Splunk的工作范圍遠遠超過搜索。在Splunk主頁上,可以看到一段展示搜索功能的視頻。Splunk同時提供免費版和商業版。


VKernel SearchMyVM


從下圖可以看到,SearchMyVM在虛擬基礎架構中提供一個類似於Google的界面。通過該界面,可以回答例如「我們掛載CD-ROM設備驅動到哪台虛擬機上了嗎?」之類的問題大納。因此如果用戶使用VMotion的話,SearchMyVM就在用戶VMware基礎架構內作為一個虛擬機應用程序運行。SearchMyVM主頁提供免費評估,但使用的話起始價格是199美元。

④ 分布式架構下splunk如何進行數據輸入

問題:現在在一個公司裡面,有1,2,3,三台電腦作為搜索頭,4,5,6,7,8五台電腦作為索引器,9作為cluster master管理集群,10作為deployment server 管理轉發器,請問應該怎鍵野樣去導入數據?假設現在數據存放在電腦108中。

1、確定測試用 索引 。首先,確定自己的分布式架構下在deployment server 下面已經建立了測試用索引,以便於進行數據測試。若不清楚是否擁有此索引,可直接詢問管理員。(若無此索引,請盡量新建一新索引作為測試用索引)

2、判斷數據所用的來源類型可以正確解析數據,若無此來源類型,應選擇合適配置並新建來源類型。(若所選來源類型可以正確解析數據,則直接跳過下面的 新建來源類型 步驟)

(1)點擊 添加數據

(2)點擊 上載

(3)選擇合適的 來源類型。 在此處配置,直到自己所用配置可以正確解析為止。若無法正確解析,請詢問管理員如何進行配置,或查閱ADMIN文檔中props.conf一節 。

3、新建 來源類型 。在deployment server新建來源類型,以求對數據獲得正確的導入格式。

(1)在 設置 中找到 來源類型

(2)點擊 新建來源類型 。請注意在此步之前是否已確定數據導入進來時斷行等數據解析是否正確,若未判斷,應先將數據導入並選擇合適的設置,以求數據正確解析。

(3)選擇合適的配置。然後保存,請再次確定此鄭胡時保存的來源類型可以正確解析數據。確定方法與第二步相同。

4、建立新遠程文件或目錄,以監控數據路徑。

(1)點擊 設置 中 數據輸入

(2)在 轉發的輸 入中選擇合適的數據類型

(3)點擊新遠程文件和目錄。

(4)請選擇存放數據的轉發器,即 可用主機 。選擇伺服器類為 新建 , 新建伺服器類名稱 。(請注意,現在所有的操作過程均為測試過程,此過程做完後顯示數據正常進入之後,再在正式的索引中導入數據,重復在此測試過程中的所有操作即可,在正式導入數據時請確定是否需要新建伺服器類,若不清楚,可直接詢問管理員。)

(5)請填寫所要監控的 文件或文件目錄 ,請注意,此喊亮攔時無法進行選擇,因為數據來自於遠方計算機,即存放數據的轉發器108中的文件或目錄路徑。例如:/var/log/syslog。

(6)點擊 選擇 ,選擇自己之前已經確定過可以正確解析數據的 來源類型 。選擇 測試用索引 (若測試正確,則再次經過此步驟時選擇正式索引)

(7)單擊 檢查 。單擊 完成。

5、此時到deployment server 下面去下發配置文件props。現在進入/opt/splunk/etc/deployment-apps/路徑,則可以看到剛才新建的伺服器類所形成的默認應用。

(1)進入/opt/splunk/etc/deployment-apps/路徑

(2)進入 應用 。進入 local。 編寫 props.conf 文件。其中寫入編碼格式,二進制等設置。若不知道正確配置可直接去第2步 復制剪貼板, 直接粘貼進去 。(請注意,此時你的來源類型為新建的時才需要編寫此處以及之後的步驟,若系統自帶的來源類型已經滿足你的需求,則不需要再在此處編寫此文件,一旦編寫,反而有可能覆蓋系統自帶的配置文件。)

(3)回到/opt/splunk/bin目錄,輸入./splunk reload deploy-server將配置文件下發至forwarder108中。

6、進入cluster master後台,去編寫cluster下的props.conf文件,路徑為/opt/splunk/etc/master-apps/。在此路徑下若只有一個文件夾_cluster,則直接編輯即可。若有兩個以上文件夾,應詢問管理員在哪個文件夾下進行編輯。編輯方式與deployment server 下的編輯一樣,只不過配置的參數不同。若不知應該配置哪些參數,則到第2步復制配置參數 復制剪貼板, 直接復制粘貼即可。

7、向所有indexer下發對應來源類型的配置參數。在cluster master的web界面進行操作。

(1)點擊 設置 中 索引器群集化。

(2)點擊 配置軟體包操作

(3)點擊推送,也有可能為Push,具體看自己的即可。此時所有操作均已完成。在搜索頭中進行搜索即可。

⑤ Splunk通過正則表達式提取關鍵字

Splunk作為提供查看log日誌的工具,有很強大的搜索功能,同時也提供可定義的欄位提取,純搏可以直接作為搜索關鍵字。Splunk 提供 Field Extractor可以通過選取需要提取的欄位進行提取,也可以直接寫正則表達式提取需要的關鍵字。

1.在Settings中找到Fields菜單,進入後可以看到一句提取的欄位列表和對應的正則表達式。

2. 選擇 New Field Extraction 就可以進入編輯界面,輸入app name,這個提取的名字和所適用的sourcetype以及最重要的提取欄位的正則表達式。比較特別的事我們提取的欄位需要給它取一個名字方便我們後面在檢索時可以直接用這個欄位,所以正則表達式中一定要帶有欄位名,如 \[w+\](?<err_code>[^:]+)中err_code就是我後面要用到的field欄位。

    至於sourcetype在log文件中都會有,應該是在配置splunk 上傳log時定義的一個欄位。

3.這些都填好後就可以保存,然後需要在Filed Extraction 列表中找到剛剛保存的那一條,點擊Permisson進行許可權的控制,也就是你這個提取的欄位是可以那些app可以看到,那些人可以使用。

4.保存完成後就可以到搜索界面直接使用這個欄位進棗褲巧行搜索和數凳鍵據統計了,然後在左側的Fields 區域也可以看到剛剛保存的欄位名。 另外通過最下面的 Extract New Fields 也可以直接進入Field Extractor工具進行欄位提取。

⑥ 如何使用Splunk工具分析網站

它是一個可以在所有主流操作系統上運行的獨立軟體包 - 只需選擇您的平台,然後下載並安裝即可。您需要處理和運行的是用戶使用的 Web 界面,以及用於索引計算機數據的引擎。2.從任意源索引任意數據Splunk 可以從任何源實時索引任何類型的計算機數據畝伍岩。可以在 Splunk 中指向您的伺服器或網路設備的系統日誌、設置 WMI 輪詢、監視實時日誌文件,並能夠監視您的文件系統或 Windows 注冊表中的更改,或安排腳本獲取系統指標。Splunk 可以索引您的所有機器數據,而無需購買、編寫或維護任何特定的分析器或適配器。原始數據和豐富索引均存儲在高效、已壓縮的、基於文件系統的數據存儲中,並提供可選數據簽名和數據的完整性審核。3.從遠程系統轉發數據在無法通過網路提供所需數據,或安裝了Splunk的伺服器上看不見所需數據的情況下,可以部署 Splunk Forwarder。Splunk forwarder 為成千上萬的端點提供安全、分布式實迅御時全局數據收集。它們可以監視本地應用程序日誌文件、捕獲有關時間表的狀態命令輸出、獲取來自虛擬或非虛擬來源的性能指標,或監控配置、許可權和屬性變化的文件系統。它們都是屬於可以快速部署的輕量級伺服器,而且不會產生任何額外費用。4.專為大型數據構建使用Splunk ,每天可收集和索引成千上萬太位元組的數據。其可擴展性體系結構基於 MapRece,因此,隨著日常數據量和數據來源不斷增長,您只需添加更多商品伺服器即可擴展效能。自動負載平衡可以優化工作負載和響應時間,並提供內置故障轉移機制。開箱即用的報告和分析功能可避免部署第三方報告工具的需要。還可以配置 Splunk 使用 SAN 或其它存儲設備,以滿足長期存儲需求。5.在整個數據中心擴展Splunk 分布式體系結構可讓您在一個數據中心跨多個部署進行搜索,或在您的所有數據中心進行全局搜索。藉助基於角色的訪問,您可以控制指定用戶的搜索將要跨越的范圍。區域用戶可以查看區域系統的數據,而企業范圍內用戶則可以查看所有數據中心的數據。Splunk 願景是讓每一位已授權員工都能夠看到他們需要的計算機數據;並將數據用於調查、報告和儀錶板或分析,以便不斷提高 IT 運營並獲得有價值的業務洞察力。花幾分鍾時間安全連接您的 Splunk 安裝,能讓您設計一個可管理的企業數據結構。6.提供角色型的安全性從各個方面橘跡來說,Splunk 均可謂是一種強大的安全模型。各項 Splunk 交易均會得到驗證,其中包括通過 Web 用戶界面和命令行介面執行的用戶活動,以及通過 Splunk API 執行的系統活動。使用一整套按用戶類型來限制功能的記錄控制點,您可以自己為 Splunk 用戶定義角色。這些精細的訪問控制可以限制搜索、警報、報告、儀錶板以及不同 Splunk 角色可以查看的視圖。Splunk 還可以集成兼容 LDAP 的外部目錄伺服器和 Active Directory 伺服器,以執行企業范圍內的安全策略。此外,還提供單一登錄集成,以啟動對用戶憑據的傳遞身份驗證。

閱讀全文

與splunk搜索命令相關的資料

熱點內容
微信聊天界面源碼 瀏覽:24
seo競價推廣點擊價格演算法公式 瀏覽:319
框架結構可以加密嗎 瀏覽:218
python編譯器怎麼清除 瀏覽:73
linux全局socks代理 瀏覽:611
php微信抽獎 瀏覽:771
壓縮演算法嵌入式移植 瀏覽:531
php新手小例子 瀏覽:233
按照醫生的演算法一周是幾天 瀏覽:805
三次b樣條曲線演算法 瀏覽:924
java7特性 瀏覽:555
愛山東app小學報名怎麼知道報沒報上 瀏覽:458
android獲取wifi信號 瀏覽:133
娜拉美妝app怎麼使用 瀏覽:760
有了源碼要買伺服器嗎 瀏覽:365
app怎麼查看自己的存款利息 瀏覽:515
碧藍安卓與b站有什麼區別 瀏覽:342
php靜態塊 瀏覽:719
ftpmget命令 瀏覽:475
源碼時代怎樣 瀏覽:415