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 相关文章推荐
JavaScript 直接操作本地文件的实现代码
Dec 01 Javascript
基于JS实现的倒计时程序实例
Jul 24 Javascript
BootStrap智能表单实战系列(九)表单图片上传的支持
Jun 13 Javascript
JS提示:Uncaught SyntaxError:Unexpected token ) 错误的解决方法
Aug 19 Javascript
js实现复选框的全选和取消全选效果
Jan 03 Javascript
微信小程序 页面传值详解
Mar 10 Javascript
HTML5+jQuery实现搜索智能匹配功能
Mar 24 jQuery
JS获取鼠标位置距浏览器窗口距离的方法示例
Apr 11 Javascript
JavaScript循环_动力节点Java学院整理
Jun 28 Javascript
JavaScript操作文件_动力节点Java学院整理
Jun 30 Javascript
JavaScript实现移动端页面按手机屏幕分辨率自动缩放的最强代码
Aug 18 Javascript
layui 数据表格+分页+搜索+checkbox+缓存选中项数据的方法
Sep 21 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
php中的一个中文字符串截取函数
2007/02/14 PHP
ThinkPHP跳转页success及error模板实例教程
2014/07/17 PHP
ThinkPHP连接数据库及主从数据库的设置教程
2014/08/22 PHP
apache和PHP如何整合在一起
2015/10/12 PHP
PHP中模拟链表和链表的基本操作示例
2016/02/27 PHP
详解cookie验证的php应用的一种SSO解决办法
2017/10/20 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
浅析PHP类的反射来实现依赖注入过程
2018/02/06 PHP
js DOM的学习笔记
2011/12/22 Javascript
window.location.href = window.location.href 跳转无反应 a超链接onclick事件写法
2013/08/21 Javascript
JavaScript中使用数组方法汇总
2016/02/16 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
2016/05/25 Javascript
三种方式实现瀑布流布局
2017/02/10 Javascript
JS触摸与手势事件详解
2017/05/09 Javascript
Nodejs之TCP服务端与客户端聊天程序详解
2017/07/07 NodeJs
探秘vue-rx 2.0(推荐)
2018/09/21 Javascript
在vue和element-ui的table中实现分页复选功能
2019/12/04 Javascript
《javascript设计模式》学习笔记一:Javascript面向对象程序设计对象成员的定义分析
2020/04/07 Javascript
JavaScript enum枚举类型定义及使用方法
2020/05/15 Javascript
js利用iframe实现选项卡效果
2020/08/09 Javascript
JavaScript canvas实现跟随鼠标移动小球
2021/02/09 Javascript
[02:31]2014DOTA2国际邀请赛2009专访:干爹表现出乎意料 看好DK杀回决赛
2014/07/20 DOTA
python中的字典使用分享
2016/07/31 Python
python交换两个变量的值方法
2019/01/12 Python
django xadmin 管理器常用显示设置方式
2020/03/11 Python
Python爬虫:Request Payload和Form Data的简单区别说明
2020/04/30 Python
Python提取视频中图片的示例(按帧、按秒)
2020/10/22 Python
button在IE6/7下的黑边去除方案
2012/12/24 HTML / CSS
金牌葡萄酒俱乐部:Gold Medal Wine Club
2017/11/02 全球购物
Dogeared官网:在美国手工制作的珠宝
2019/08/24 全球购物
简短证婚人证婚词
2014/01/09 职场文书
水利学院求职自荐书
2014/02/01 职场文书
中学教师暑期培训方案
2014/08/27 职场文书
祖国在我心中演讲稿(小学生)
2014/09/23 职场文书
《法国号》教学反思
2016/02/22 职场文书
文案策划岗位个人自我评价(范文)
2019/08/08 职场文书