Zabbix添加Node.js监控的方法

目前网上已有 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监控的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

时间: 2016-10-19

Zabbix监控Linux主机设置方法

说明: Zabbix监控服务端已经配置完成,现在要使用Zabbix对Linux主机进行监控. 具体操作: 以下操作在被监控的Linux主机进行,这里以CentOS 6.x系统为例. 一.配置防火墙,开启10050.10051的TCP和UDP端口 vi /etc/sysconfig/iptables #编辑防火墙配置文件 -A INPUT -s 192.168.21.127 -m state --state NEW -m tcp -p tcp --dport 10050:10051 -j ACCE

安装配置Zabbix来监控MySQL的基本教程

Zabbix的简单安装配置说明 1.在已有的LAMP或者LNMP的基础上安装zabbix,安装一些依赖包: yum -y install mysql-devel libcurl-devel net-snmp-devel 2.添加用户: groupadd zabbix useradd zabbix -g zabbix 3.创建数据库,添加授权账号 create database zabbix character set utf8; grant all privileges on zabbix.*

使用zabbix监控mongodb的方法

MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. Mongodb如今越来越火,要做好对mongodb的监控就需要从它的安装配置,到简单的command语句使用,再到对它运行机制以及状态获取方法的掌握. mongodb有三种基本的状态获取方式: 1.mongostat 2.开启28017的监听端口,curl

ubuntu系统下部署zabbix服务器监控的方法教程

前言 最近需要部署一套zabbix监控服务器,之前只是玩过zabbix的注入漏洞,但还没布置过,发现网上好多都是centos+源码编译的zabbix,因此写下此篇记录下安装过程,下面来一起看看详细的介绍: 环境ubuntu+apache+mysql+php,没搭建的可以参考这篇文章 php设置: //重要,安装zabbix时会检测这些内容是否已经修改 vim /etc/php5/apache2/php.ini ;date.timezone ===>去掉注释在=后添加 Asia/Shanghai

Zabbix监控交换机设置方法

说明: Zabbix监控服务端已经配置完成,现在要使用Zabbix对交换机进行监控. 具体操作: 以下操作在被监控的交换机上进行,这里以Cisco交换机为例. 一.登录到Cisco交换机,开启snmp服务 注意:使用telnet或者仿真终端登录到交换机特权配置模式 enable #切换到特权模式 configure terminal #进入全局配置模式 snmp-server community public ro #打开交换机snmp服务,设置团体名称为public,只读 snmp-serve

什么是zabbix(高度集成的监控集成方案)

zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题. zabbix由2部分构成,zabbix server与可选组件zabbix agent. zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,So

SpringBoot集成Druid监控页面最小化配置操作

在项目中使用阿里的druid连接池,pom文件配置: <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>com.alibaba</groupId&g

Zabbix 上Windows性能监控的方法

背景信息 最近在重新看一些关于windows 性能的书籍,对于我这样一个原来使用SCOM监控的懒人来说,Zabbix 上自带的windows OS template 的模板实在是不够用,因为之前SCOM监控包(微软出的,把所有工作都做了,我只需要按需启用规则和告警即可). 默认的Zabbix 性能数据只有Avg Latency,平均的数据也不准,想看下磁盘的Latency以及IOPS要自己动手,看了下zabbix 中windows performance Counter 的语法,我略有退缩了.全

zabbix通过percona插件监控mysql的方法

1.安装PHP脚本运行环境 yum install -y php php-mysql 2.加载官方percona模板 [root@cat /]# wget https://www.percona.com/downloads/percona-monitoring-plugins/1.1.6/percona-zabbix-templates-1.1.6-1.noarch.rpm [root@cat /]# rpm -ivh percona-zabbix-templates-1.1.6-1.noarc

zabbix 添加你需要监控的主机

添加监控主机 主机192.168.179.104添加进zabbix监控项(在192.168.179.104安装上zabbix-agent) #添加监控主机,注意zabbix版本要和server端一致 [root@localhost ~]# yum install zabbix40-agent -y --被监控的主机192.168.179.104安装上agent [root@localhost ~]# rpm -qc zabbix40-agent /etc/zabbix/zabbix_agentd

Zabbix如何通过ssh监控获取网络设备数据

场景模拟: 某企业的运维人员想用zabbix监控以前购买的一批网络设备的光口的状态利用率,电压等信息,他们发现这台网络设备是支持snmp协议的,于是他们想通过snmp协议进行监控.但是由于这台设备的维保期已过,客服无法给他们提供oid文件.让该企业的运维人员无从监控.这时候他们发现zabbix有一种ssh的监控方式.于是他们打算使用该方式通过ssh获取数据. 需求分析: 光模块应该是多个,如果要监控多个光口的状态,电压,应该做成自动发现 通过ssh监控,执行语句后,返回的光口信息为字符串,需要额

Python脚本实现Zabbix多行日志监控过程解析

通过使用zabbix 日志监控 我发现一个问题 例如oracle的日志有报错的情况 ,通常不会去手动清理 这样的话当第二次有日志写进来的时候 zabbix的机制是回去检查全部日志,这样的话之前已经告警过的错误日志,又会被检查到,这样就会出现重复告警,而且zabbix的日志监控只能读到匹配当前行关键字的数据,感觉不太灵活, 比如我想要匹配到的关键字之后再当前关键字的下N行再去匹配另一个关键字这个时候就比较麻烦,在这里给大家推荐一个有效,便捷解决的方式. 通过Python脚本实现日志监控 要求 1

Iframe 自适应高度并实时监控高度变化的js代码

google N次 + 百度M次 + 试验了1605次之后(听说农药1605就是实验了这么多次后出来的),得出下面成果,在IE7及Firefox3里试了下还能凑合着用用! 1.首先给出个Iframe. 复制代码 代码如下: <iframe id="ifrm" marginheight="0" marginwidth="0" height="100" width="1000" frameborder=&

Zabbix基于snmp实现监控linux主机

前言: linux主机的话还是比较好处理的,无论是安装agent代理程序还是使用snmp,都是比较方便的,本文旨在介绍通过snmp使client与server进行连接. 环境: server:192.168.249.142 client:192.168.249.145 基础配置:关闭selinux,关闭防火墙或者打开161端口. 一.client端snmp的基础配置: 1.安装snmp(使用阿里yum源): [root@cinder snmp]# yum install net-snmp 2.根