在使用zabbix的時候可能會有遇到這麼一個場景:經過配置自動發現獲取到的值裏面每每存在着部分本身所不須要的取值,可能你會以爲直接無論它就好,小場景下這樣的作法確實沒什麼問題,可是若是在大場景下呢?可能一臺機器就能自動發現出成百上千的無用監控項,同時這種設備還不止一臺的話,而是多臺的狀況下,大量的無用監控項無疑是對資源極大的浪費。其實咱們可用經過自動發現的過濾器配合着本地的正則表達式去進行一個過濾來解決這一問題。正則表達式
1、 如今的這臺機器上的文件系統應用集裏面的監控項被配置自動發現規則發現出來,圖一。
圖1
而我如今想把/boot有關這塊的內容把它去掉。ide
2、 我先去到相應模板的自動發現規則那裏找到對應的鍵值。
圖2
而後到命令行界面進行相應的查詢,能夠看到返回jason格式數據中,/boot對應的標籤宏是{#FSNAME}。
圖3命令行
3、 在過濾器新增正則表達式。
圖4
表示:把發現到的文件系統中的/boot過濾掉。blog
4、 回到該主機上查看對應的監控項信息。
圖5
能夠看到該相應的監控項其實已經不在使用,且在咱們自動發現規則設置的的資源保存週期事後將會被自動刪除。資源
5、 另外在上面圖三中還能夠看到針對該自動發現的類型作了一個過濾,它這種寫法實際上是引用了已經配置好的正則表達式。而該表達式就在
圖6
寫法同樣是 ^(……)$
圖7
設置該部份內容「結果爲真」,結合圖4對應部分的「匹配」設置能夠理解爲:文件類型符合如下類型的內容才選用。
另外須要注意的是對於該部分的內容(引用正則的作法),若是導出模板到另一個環境中可能會由於新環境不存在該部分正則表達式,過濾器沒法進行引用,而致使部分監控項沒法使用或者模板出錯等問題的出現。it