zabbix通過自訂指令碼監控nginx,php-fpm和mysql佔用記憶體數和進程的個數

來源:互聯網
上載者:User

標籤:mysql   php   nginx   zabbix   自訂指令碼   

zabbix通過自訂指令碼監控nginx,php-fpm和mysql佔用記憶體數和進程的個數

首先,在zabbix指令碼目錄下添加一個指令碼,寫入如下代碼

#!/bin/bash

#license:GPL

#mail:[email protected]

#date:2015.04.16

top -bn1>/usr/local/zabbix-2.4.4/scripts/process.log

LOG=/usr/local/zabbix-2.4.4/scripts/process.log

php_fpm(){

grep "php-fpm" $LOG |awk ‘{sum+=$6}; END{print sum}‘

}


php_fpm_num(){

        grep "php-fpm" $LOG |wc -l

}


nginx(){

        grep "nginx" $LOG |awk ‘{sum+=$6}; END{print sum}‘

}


nginx_num(){

        grep "nginx" $LOG |wc -l

}


mysqld(){

        grep "mysqld" $LOG |awk ‘{sum+=$6}; END{print sum}‘

}


mysqld_num(){

        grep "mysqld" $LOG |wc -l

}


case "$1" in

php_fpm)

php_fpm

;;

php_fpm_num)

php_fpm_num

;;

nginx)

nginx

;;

nginx_num)

nginx_num

;;

mysqld)

mysqld

;;

mysqld_num)

mysqld_num

;;

*)

echo "Usage: $0 {php_fpm|php_fpm_num|nginx|nginx_num|mysqld|mysqld_num}"

esac

儲存之後修改其屬組和屬主為zabbix.zabbix,然後建立一個檔案process.log,同樣設定屬主和屬組為zabbix.zabbix

然後編輯zabbix_agentd.conf檔案,在最後添加上下面這段代碼,並重啟zabbix_agentd服務

UserParameter=process.php_fpm,/usr/local/zabbix-2.4.4/scripts/processstatus.sh php_fpm

UserParameter=process.php_fpm_num,/usr/local/zabbix-2.4.4/scripts/processstatus.sh php_fpm_num

UserParameter=process.nginx,/usr/local/zabbix-2.4.4/scripts/processstatus.sh nginx

UserParameter=process.nginx_num,/usr/local/zabbix-2.4.4/scripts/processstatus.sh nginx_num

UserParameter=process.mysqld,/usr/local/zabbix-2.4.4/scripts/processstatus.sh mysqld

UserParameter=process.mysqld_num,/usr/local/zabbix-2.4.4/scripts/processstatus.sh mysqld_num

之後就可以在web頁面添加item,組建圖表了,注意top取到的記憶體單位是KB,所以在定義item的時候需要自訂單位和設定倍數

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/6B/80/wKiom1UvNEbSdVSbAAB9vqqsXSo658.jpg" title="1.png" alt="wKiom1UvNEbSdVSbAAB9vqqsXSo658.jpg" />

產生的各個程式佔用記憶體大小的圖形如下

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6B/80/wKiom1UvNJygIArSAAUIoiF9ZSg645.jpg" title="2.png" alt="wKiom1UvNJygIArSAAUIoiF9ZSg645.jpg" />產生的各個程式的進程個數圖形如下,可以設定觸發器,當進程滿足觸發其條件時發送警示

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/6B/7C/wKioL1UvNlHCeZ99AASOUhadZvA947.jpg" title="3.png" alt="wKioL1UvNlHCeZ99AASOUhadZvA947.jpg" />

本文出自 “檸檬” 部落格,請務必保留此出處http://xianglinhu.blog.51cto.com/5787032/1633333

zabbix通過自訂指令碼監控nginx,php-fpm和mysql佔用記憶體數和進程的個數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.