ホームページ  >  記事  >  ウェブフロントエンド  >  Node.js監視をZabbixに追加する方法

Node.js監視をZabbixに追加する方法

高洛峰
高洛峰オリジナル
2016-12-09 15:14:001427ブラウズ

機能:

PM2を通じて管理されるNode.jsプロセスを自動的に検出します。

Nodes.js プロセスのステータス、CPU 使用率、メモリ使用量、プロセスが再起動されたかどうかをレポートします。

PM2 デーモンプロセスのステータス、リソース使用量、PID の変更を監視します。

インストールが簡単なZabbix監視項目テンプレートが提供されています。

1. Node.js サーバーのインストール pm2-zabbix

npm install -g pm2-zabbix

自動検出機能が正常かどうかをテストします:

pm2-zabbix --discover

インストールが成功したことを示すものと同様の出力:

{
"data": [
{
"{#PROCESS_ID}": "qb_node-0",
"{#PROCESS_NAME}": "qb_node"
},
{
"{#PROCESS_ID}": "qb_node-1",
"{#PROCESS_NAME}": "qb_node"
},
{
"{#PROCESS_ID}": "qb_node-2",
"{#PROCESS_NAME}": "qb_node"
},
{
"{#PROCESS_ID}": "qb_node-3",
"{#PROCESS_NAME}": "qb_node"
}
]
}

2.コードのクローン

git clonehttps://github.com/greatcare/pm2-zabbix.git

3. Zabbix Web管理バックグラウンドインポートテンプレートファイルpm2-zabbix/install/zabbix-server/pm2-zabbix.template.xml

4. Node.js サーバーにサービスを追加し、サーバーのオペレーティング システムのバージョンに応じて選択し、PM2 で開始された Node.js ユーザーと一致するようにサービス実行ユーザーを変更します

RHEL/CentOS 7 シリーズ:

cp pm2-zabbix/install/init/systemd/pm2-zabbix.service /usr/lib/systemd/system/
giletターゲットファイルPM2-Zabbix .Serviceファイルコンテンツユーザーアイテム:

User=root

rhel/centos 6または5シリーズ:

cp pm2-zabbix/install/init/sysv/pm2-zabbix /etc/init.d/

content DAEMON_USER 項目:

DAEMON_USER=root

5. 新しいソフト接続を作成し、サーバーに従ってソフト接続が指す実際のファイル パスを変更します

mkdir -p /etc/zabbix
ln -s /App/zabbix/etc/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf
ln -s /App/zabbix/bin/zabbix_sender /usr/bin/zabbix_sender
ln -s `which node` /usr/bin/node
ln -s `which pm2-zabbix` /usr/local/bin/pm2-zabbix

6. pm2-zabbix サービスを開始します。

RHEL/CentOS 7 シリーズ:

systemctl start pm2-zabbix

RHEL/CentOS 6 または 5 シリーズ:

service start pm2-zabbix

7 Zabbix エージェント設定ファイル zabbix_agentd.conf を変更し、他の設定を追加します

Include=/App/zabbix/etc/zabbix_agentd.conf.d/*.conf

8. Zabbix エージェント設定をコピーします

cp pm2-zabbix/install/zabbix-agent/pm2-zabbix.conf /App/zabbix/etc/zabbix_agentd.conf.d/pm2.conf

9. 設定 pm2.conf の内容を変更します sudo -u ユーザーはステップ 4 と同じです。同僚は pm2-zabbix パスを変更します

UserParameter=pm2.processes,sudo -u root /usr/local/bin/pm2-zabbix --discover

10. サーバー端末はプログラム visudo を実行し、sudo 設定を追加します

zabbix ALL=(ALL:ALL) NOPASSWD: /usr/local/bin/pm2-zabbix
Defaults:zabbix !requiretty

11. Node.js サーバー Zabbix Agent サービスを再起動します

12. Zabbix Web 管理のバックグラウンド設定 Node.j sサーバー リンクの追加 テンプレート アプリ PM2 テンプレート PM2 デーモン CPU 使用率 PM2 デーモンのメモリ使用量 PM2 によって管理されるノード プロセス インスタンスの CPU 使用量 PM2 によって管理されるノード プロセス インスタンスのメモリ使用量

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