Zabbix監控3par存儲服務器showfpg信息


創建監控項

存儲為NAS服務器時,才有showfpg命令,基本存儲無法使用。

默認情況下使用zabbix自帶的ssh客戶端方式來實現,如遇到zabbix自帶ssh無法登陸的情況,需要使用python或其他第三方來模擬ssh登錄 獲取信息

  1. 創建監控項,獲取初始信息

  2. 在進程中,使用js腳本 處理獲取到的信息

    js腳本內容為:

    data = value.trim().split('\n');
    data = data.slice(2, -2);
    var data_dict = [];
    
    for (i=0;i<data.length;i++) {
      line = data[i].trim().replace(/\s+/g, ' ').split(' ');
      item = {};
      item['FPG'] = line[0];
      item['Mountpath'] = line[1];
      sizes = Number(line[2]);
      free = Number(line[3]);
      used = sizes - free;
      item['size'] = sizes;
      item['used'] = used;
      item['Utilization'] =
        Math.round(((used * 100) / (sizes * 100)) * 10000) / 100.0 + '%';
      item['ActiveStates'] = line[4];
      item['State'] = line[7];
      data_dict.push(item);
    }
    
    return JSON.stringify(data_dict)
    

    添加並保存,至此監控項創建完成。

創建自動發現規則

監控項創建完成后,可以初步獲取到showfpg命令的所有信息,但還需要將信息按 每一個掛載區分開來,這里就需要用到自動發現。

在進程中,將"FPG"字段替換為一個宏變量,方便后續獲取單獨名稱

var reg = /"FPG"/g;
new_str = value.replace(reg, '"{#FPGNAME}"')
return new_str

更新保存,開始添加監控項原型。

在進程中,處理獲取到的值。

通過 JSONPath語法,獲取 json 中對應的鍵值,鍵名為創建監控項時,js中定義的 item 名稱

其他值的自動發現與該項相同,只需要修改對應的名稱為 item中對應的鍵名即可。(主要修改監控原型名稱,鍵值,以及進程中 JSONPath 語法對應的key,即上圖中划線部分)

觸發器的創建

其他觸發器同理。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM