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 相关文章推荐
jquery实现图片裁剪思路及实现
Aug 16 Javascript
Javascript对象属性方法汇总
Nov 21 Javascript
jQuery CSS()方法改变现有的CSS样式
Aug 20 Javascript
Jquery获取第一个子元素简单实例
Jun 02 Javascript
解析JavaScript中的字符串类型与字符编码支持
Jun 24 Javascript
js 中文汉字转Unicode、Unicode转中文汉字、ASCII转换Unicode、Unicode转换ASCII、中文转换
Dec 06 Javascript
js倒计时小实例(多次定时)
Dec 08 Javascript
Bootstrap CSS组件之按钮组(btn-group)
Dec 17 Javascript
Vue.js基础学习之class与样式绑定
Mar 20 Javascript
荐书|您有一份JavaScript书单待签收
Jul 21 Javascript
jQuery实现可兼容IE6的滚动监听功能
Sep 20 jQuery
vue通过数据过滤实现表格合并
Nov 30 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 XML操作的各种方法解析(比较详细)
2010/06/17 PHP
用php的ob_start来生成静态页面的方法分析
2011/03/09 PHP
探讨:如何通过stats命令分析Memcached的内部状态
2013/06/14 PHP
微信公众号开发之获取位置信息php代码
2018/06/13 PHP
用js重建星际争霸
2006/12/22 Javascript
刷新页面的几种方法小结(JS,ASP.NET)
2014/01/07 Javascript
用jquery的方法制作一个简单的导航栏
2014/06/23 Javascript
javascript实现tab切换的两个实例
2015/11/05 Javascript
JS获取CSS样式(style/getComputedStyle/currentStyle)
2016/01/19 Javascript
基于JS组件实现拖动滑块验证功能(代码分享)
2016/11/18 Javascript
vue-axios使用详解
2017/05/10 Javascript
基于Vue实现后台系统权限控制的示例代码
2017/08/29 Javascript
基于游标的分页接口实现代码示例
2018/11/12 Javascript
详解vue数组遍历方法forEach和map的原理解析和实际应用
2018/11/15 Javascript
小程序实现列表多个批量倒计时
2021/01/29 Javascript
深入了解query和params的使用区别
2019/06/24 Javascript
理解Python中的With语句
2015/02/02 Python
详解Python3.1版本带来的核心变化
2015/04/07 Python
Python操作Word批量生成文章的方法
2015/07/28 Python
详解Python3操作Mongodb简明易懂教程
2017/05/25 Python
python3爬取数据至mysql的方法
2018/06/26 Python
pycharm修改file type方式
2019/11/19 Python
opencv3/C++ 平面对象识别&透视变换方式
2019/12/11 Python
TENSORFLOW变量作用域(VARIABLE SCOPE)
2020/01/10 Python
Python编程快速上手——strip()函数的正则表达式实现方法分析
2020/02/29 Python
pytorch 中的重要模块化接口nn.Module的使用
2020/04/02 Python
解决python多线程报错:AttributeError: Can't pickle local object问题
2020/04/08 Python
Python实现仿射密码的思路详解
2020/04/23 Python
python中的split、rsplit、splitlines用法说明
2020/10/23 Python
加拿大高尔夫超市:Golf Town
2018/01/12 全球购物
Vans澳大利亚官网:购买鞋子、服装及配件
2019/09/05 全球购物
黑猩猩商店:The Chimp Store
2020/02/12 全球购物
财务管理专业求职信
2014/06/11 职场文书
学生病假条范文
2015/08/17 职场文书
怎样写工作总结啊!
2019/06/18 职场文书
导游词之大雁塔景区
2019/09/17 职场文书