Zabbix获取并监控linux系统的进程名

       最近需要监控运行在业务系统上的进程,要求是看到具体的进程名。通常监控进程一般可以使用内置的键值,但只能返回的是进程的数量,虽然效果上也能实现,但和预期的结果有些区别,下面说下获取具体进程名的方法!

ouCMXeDk62d507c2f30e2.png
1、 agent端开启远程命令
需要注意5.0版本及最新的agent和旧版本的配置是有写区别的。
5.0版本的zabbix_agentd.conf以下的参数是: EnabledRemoteCommand=1
5.0版本zabbix_agentd.conf的参数是: AllowKey=system.run
   保存后,重启agent。
2、获取进程名
总的来说,获取进程名还是用命令,这里介绍一下我的方法:
一、先在agent端上面用ps -ef| grep 看下进程,然后调整一下,只输出进程名;
调整前qq4rT1eE62d507d27abfb.png
调整后4sfWaObB62d507dfe05b6.png
但还会有一个 grep XXX 的存在,也需要去掉,方法就是反向过滤即可,参考命令:
ps -ef|grep 进程名 | grep -v grep | awk ‘{print $10}’
二、创建进程模板,先创建宏,把输出进程名的命令复制过来,然后创建监控项,使用 system.run[宏]键值,最后关联主机4rxgIYhg62d507f54c87b.pngXxsA4ZWQ62d50802cdd0b.pngHK0WHW3262d508111ea68.png
效果
三、触发器
5分钟没有找到字符触发。paC3kKPC62d5086ddf846.png
因为进程比较多,这里是采用创建模板的方式;另外也可以在agent的配置文件自定义键值,例如 UserParameter=agent, ps-ef|grep zabbix_agentd | grep -v grep | awk ‘{print $NF}’,然后就创建监控项,键值写 agent就行。还有一种写脚本方式,也是执行ps -ef|grep 命令。

0 条评论

请先 登录 后评论
乐维君
乐维君

397 篇文章

作家榜 »

  1. 乐维君 397 文章
  2. YOHOHO 14 文章
  3. 机灵小和尚 13 文章
  4. 我是一只小菜鸡 12 文章
  5. 细雨闲花 11 文章
  6. 。。。 9 文章
  7. 御前侍卫张五哥 9 文章
  8. 小黄人 8 文章