Zabbix添加Node.js监控的方法


Posted in Javascript onOctober 20, 2016

目前网上已有 pm2-zabbix 工具可以实现Zabbix对Node.js的监控报警,Github地址。

特征:

自动发现通过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/

修改目标文件 pm2-zabbix.service 文件内容 User项:

User=root

RHEL/CentOS 6或5系列:

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

修改目标文件 pm2-zabbix 文件内容 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 Agent配置文件 zabbix_agentd.conf,添加包含其它配置

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

8.拷贝Zabbix Agent配置

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服务

/etc/init.d/zabbix_agentd restart

12.Zabbix Web管理后台设置Node.js服务器添加链接 Template App PM2 模板 PM2守护进程CPU使用率 PM2守护进程内存占用 PM2管理的Node进程实例CPU使用率 PM2管理的Node进程实例内存占用

以上所述是小编给大家介绍的Zabbix添加Node.js监控的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JS刷新框架外页面七种实现代码
Feb 18 Javascript
表单验证的完整应用案例探讨
Mar 29 Javascript
一个检测表单数据的JavaScript实例
Oct 31 Javascript
JavaScript组合拼接字符串的效率对比测试
Nov 06 Javascript
IE6/IE7中JavaScript json提示缺少标识符、字符串或数字问题处理
Dec 16 Javascript
浅谈js中变量初始化
Feb 03 Javascript
js实现将选中值累加到文本框的方法
Aug 12 Javascript
jQuery基础知识点总结(DOM操作)
Jun 01 Javascript
javascript字体颜色控件的开发 JS实现字体控制
Nov 27 Javascript
JS实现在文本指定位置插入内容的简单示例
Dec 22 Javascript
jQuery pager.js 插件动态分页功能实例分析
Aug 02 jQuery
微信小程序聊天功能的示例代码
Jan 13 Javascript
Javascript实现图片懒加载插件的方法
Oct 20 #Javascript
Vue.js Ajax动态参数与列表显示实现方法
Oct 20 #Javascript
探究Vue.js 2.0新增的虚拟DOM
Oct 20 #Javascript
Javascript 创建类并动态添加属性及方法的简单实现
Oct 20 #Javascript
javascript匀速动画和缓冲动画详解
Oct 20 #Javascript
js设置和获取自定义属性的方法
Oct 20 #Javascript
js阻止冒泡和默认事件(默认行为)详解
Oct 20 #Javascript
You might like
MySQL相关说明
2007/01/15 PHP
PHP中break及continue两个流程控制指令区别分析
2011/04/18 PHP
PHP+Mysql+Ajax+JS实现省市区三级联动
2014/05/23 PHP
destoon在各个服务器下设置URL Rewrite(伪静态)的方法
2014/06/21 Servers
javascript jQuery插件练习
2008/12/24 Javascript
node.js中的path.resolve方法使用说明
2014/12/08 Javascript
用svg制作富有动态的tooltip
2015/07/17 Javascript
jQuery获取父元素节点、子元素节点及兄弟元素节点的方法
2016/04/14 Javascript
JS框架之vue.js(深入三:组件1)
2016/09/29 Javascript
JS函数修改html的元素内容,及修改属性内容的方法
2016/10/28 Javascript
Bootstrap Modal遮罩弹出层代码分享
2016/11/21 Javascript
js querySelector() 使用方法
2016/12/21 Javascript
微信小程序-获得用户输入内容
2017/02/13 Javascript
浅析JavaScript中var that=this
2017/02/17 Javascript
JS优化与惰性载入函数实例分析
2017/04/06 Javascript
详解JavaScript数组过滤相同元素的5种方法
2017/05/23 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
2017/07/13 Javascript
vue.js使用3DES加密的方法示例
2018/05/18 Javascript
vue 中基于html5 drag drap的拖放效果案例分析
2018/11/01 Javascript
新手快速入门JavaScript装饰者模式与AOP
2019/06/24 Javascript
electron踩坑之remote of undefined的解决
2020/10/06 Javascript
[01:03:37]Secret vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
Python竟能画这么漂亮的花,帅呆了(代码分享)
2017/11/15 Python
python贪吃蛇游戏代码
2020/04/18 Python
详解Python连接MySQL数据库的多种方式
2019/04/16 Python
Python元组 tuple的概念与基本操作详解【定义、创建、访问、计数、推导式等】
2019/10/30 Python
Django全局启用登陆验证login_required的方法
2020/06/02 Python
keras实现theano和tensorflow训练的模型相互转换
2020/06/19 Python
Python使用pycharm导入pymysql教程
2020/09/16 Python
HTML5触摸事件演化tap事件介绍
2016/03/25 HTML / CSS
您的时尚,您的生活方式:DTLR Villa
2019/12/25 全球购物
简述进程的启动、终止的方式以及如何进行进程的查看
2013/07/12 面试题
写求职信有哪些注意事项
2014/05/08 职场文书
青春飞扬演讲稿
2014/09/11 职场文书
女性健康讲座主持词
2015/07/04 职场文书
2016简历自荐信优秀范文
2016/01/29 职场文书