zabbix監控誤報的問題

2021-09-20 17:31:31 字數 1118 閱讀 9366

1、zabbix監控誤報的問題

最近發現zabbix監控一些埠比較多的伺服器的時候,會產生誤報情況,就是埠明明是正常的,卻報警說埠掛了,然後很快恢復;另乙個監控軟體nagios卻沒有報警,查了幾天,也沒得到很好的解決辦法,初步懷疑是不是佇列問題,後來網上查到乙個解決辦法,在agentd.conf中新增一條自定義的項,取代現有的預設項。

userparameter=net.tcp.listen.grep[*],grep -q $$(printf '%04x.00000000:0000.0a' $1) /proc/net/tcp && echo 1 || echo 0

補充:我在配置過程中忽略了兩個問題,導致自定義的鍵值可能沒有生效!

第一:如果你的userparameter 包含\ ' 」 ` * ? [ ] ~ $ ! & ; ( ) < > | # @這些字元,則需要開啟下面這個引數

修改/etc/zabbix/zabbix_agentd.conf

unsafeuserparameters=1

關於key 的名稱定義注意事項

1、所有的數字;

2、所有的小寫字母;

3、所有大寫字母;

4、下劃線;

5、破折號;

6、點.

第二:既然新定義了key,就得用net.tcp.listen.grep[*]取代舊的net.tcp.listen[*]

所以你還得在web介面修改專案的鍵值為net.tcp.listen.grep[埠]

這個經過驗證後,發現效果很明顯,從多台機器一晚上幾十封誤報,到一晚上特定兩個埠幾封誤報!

另一方案,哥這次嘗試用觸發器表示式,某一分鐘或者兩分鐘之內,出現兩次誤報才報警!

>1

這個只能是第一種方案的補充,改過後,那幾個特定埠,在周五和雙休日的三天裡,只誤報過兩封!至於為何不能徹底杜絕,我也很無語了!

2、關於鍵值中$和$$用法的問題

在使用自定義鍵值中,發現乙個問題,那就是後面的命令項中,明明在shell中可用的$,換到agentd中,會get不到值,後來問了一些朋友,才恍然大悟,因為例如awk '',這裡的$1本來在awk中是取第一列,但是這裡卻還有個問題,$1也同時是引數替代,這樣就變得混亂了;如果想繼續使用shell中的含義,就必須要多加乙個$$符號才行

zabbix監控系統時間的問題

分類 監控 2013 03 19 21 40 11 發現zabbix監控系統時間的乙個問題!zabbix監控系統時間用的key是system.localtime,返回當前的系統時間,而配置tigger報警時是用的fuzzytime n 方法,該方法是將返回的系統時間與監控伺服器的時間進行對比,如果大...

zabbix監控的部署

二 1 yum install zabbix server mysql zabbix web mysql zabbix agent httpd mariadb mariadb server php php mysq 2報錯,進入 cd etc repos.d 上傳centos源 再次安裝以上軟體包 ...

zabbix監控部署

一 環境,監控伺服器和被監控伺服器都關閉防火牆和selinux 二 監控伺服器安裝及配置 2 安裝好資料庫後啟動systemctl start mariadb,建立資料庫create database zabbix character set utf8 collate utf8 bin 建立賬戶並授...