最近在做監控設備時,老是會有端口down掉的告警,一查數據發現,端口本來一直就是down的,關了之后,過段時間又繼續發告警;還有領導反饋監控項那么多為啥那么多沒有數據的,然后又blablabla解釋了一大堆。所以,就想到了使用過濾器,添加正則表達式給這些沒啥實際意義的監控項去掉,記錄下來供大家參考。具體操作請以實際情況為準。
過濾器,顧名思義是指過濾掉不需要的監控項,比如端口沒有數據的、狀態一直是down的、虛擬端口等;在自動發現規則使用過濾器就對我們的監控需求很有幫助。
下面以網絡設備的端口的狀態、虛擬端口為例,淺談一下如何使用過濾器幫助我們達到監控效果,也可以在其他有自動發現規則的模板使用,過濾前可以先觀察實際情況的數據,然后再使用過濾器。
1、過濾掉虛擬端口(Virtual Interface)
如下圖所示的,Vlanif(VirtualLocalAreaNetworkIterface)這些端口,一般是設備的邏輯端口,在物理上并不存在的,類似的還有virtual interface、Vinterface等名稱的,都屬于虛擬端口。監控這些虛擬的端口沒有實際意義,可以適當的過濾。


過濾方法:在自動發現規則添加正則表達式 ^Vlanif,然后點 現在檢查 等待重新自動發現即可過濾此類監控項。

2、不發現狀態關閉或者未知的端口
通常端口的狀態有三個值映射,也就是 0 Unknow、1On 、2 Down,當然每種型號的設備可能會有所區別,需要根據實際的設備OID查詢。我們一般會把端口的狀態是Down的情況創建觸發器,但假如端口一直是 Off的,然后一直發告警信息,這就不符合實際監控需求,應該是有up轉down才送告警。因此需要在自動發現時,過濾狀態為Down的端口。
打開端口狀態的監控項,復制oid到自動發現規則

在過濾器添加正則表達式,過濾掉狀態為2(Down)的端口

然后加到自動發現規則里面,更新后,點擊現在檢查,等規則重新發現數據后,就會過濾掉狀態為Down的端口了。

當然,這個是一個一個模板的添加修改的,在模板較多時,不方便,可以在 配置 – 一般 – 正則表達式,創建全局的表達式,然后在自動發現規則引用即可以。
示例:

引用方式:點擊添加表達式,輸入宏,使用 @Network interfaces for discovery 即可。

關于正則表達式的使用,可以參考一些教程學習網站,如菜鳥教程、W3Cschool等。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。