ホームページ  >  記事  >  バックエンド開発  >  Zabbix は、カスタム スクリプトを通じて nginx、php-fpm、mysql が占有するメモリとプロセスの数を監視します。

Zabbix は、カスタム スクリプトを通じて nginx、php-fpm、mysql が占有するメモリとプロセスの数を監視します。

WBOY
WBOYオリジナル
2016-06-20 12:58:27767ブラウズ

zabbix は、カスタム スクリプトを通じて nginx、php-fpm、mysql が占有するメモリとプロセス数を監視します

まず、zabbix スクリプト ディレクトリにスクリプトを追加し、次のコードを記述します

#!/bin/bash

#license:GPL

#mail:admin@huxianglin.cn

#date:2015.04.16

トップ-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 "使用量: $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 ページに項目を追加し、グラフを生成できるようになります。top が使用するメモリ単位は KB であるため、カスタマイズする必要があることに注意してください。

生成された各プログラムのメモリサイズのグラフは以下のとおりです

生成された各プログラムのプロセス数のグラフは以下のとおりですトリガーを設定できます。プロセスがトリガーとなる条件が満たされたときにアラームを送信します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。