1. 程式人生 > >(64)zabbix正則表達式應用

(64)zabbix正則表達式應用

必備 xfs 正則表達式 問題 network ini sys zab als

概述

在前面的《zabbix low-level discovery》一文中有filter一項,用於從結果中篩選出你想要的結果,比如我們在filter中填入^ext|^reiserfs則表示{#FSTYPE}要符合ext與reiserfs才能加入到item中

這個需求比較簡單,假如我們過濾方法更嚴格怎麽辦?或者說多個low-level的filter都有用到同一個正則表達式,並且希望修改一處,所有的filter都跟著修改,請使用zabbix正則表達式。

配置

點擊Administration >>General>>右側下拉表選擇“ Regular expressions”>>New regular expression.

所有匹配完全匹配btrfs|ext2|ext3|ext4|jfs|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|ntfs|fat32|zfs文件類型返回true,

正則表達式為^(btrfs|ext2|ext3|ext4|jfs|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|ntfs|fat32|zfs)$

技術分享圖片

說明:如果符合如上表達式,那麽返回TRUE,否則返回FLASE,可以Add多個表達式,所有的表達式之間是邏輯與的關系,必須所有的表達式都返回TRUE,最終的結果才是TRUE

正則表達式參數說明

Expression:正則表達式名稱

Expression type:正則表達式類型

1. Character string included         字符串包含,例如表達是處寫abc,你返回的內容是abcd,那麽就算匹配了,將會返回TRUE

2. Any character string included        任意字符串包含在內(以逗號‘,‘,點號‘.‘,斜杠‘/‘分隔),這邊使用上有點問題

3. Result is TRUE              符合正則表達式返回TRUE、否則返回FALSE

4. Result is FALSE             符合正則表達式返回FALSE、否則返回TRUE

Case sensitive:是否區分大小寫

點擊Test標簽測試正則表達式是否符合預期,例如輸入ext2點擊test,可以發現最後結果是TRUE,如下圖

技術分享圖片

技術分享圖片

如何引用正則表達式

例如low-level filter需要引用表達式,在表達式名稱前加@即可,例如@你的正則表達式名稱、@File systems for discovery

技術分享圖片

正則表達式名稱規範

名稱可以包含逗號與空格,例如@network, ttlsa,不推薦你使用逗號,讓人覺得很奇怪,並且使用逗號的時候,你需要用雙引號將整個名稱括起來,例如“@network, ttlsa”

(64)zabbix正則表達式應用