砂拉豆 发表于 2018-1-1 22:37:03

Zabbix自动发现监控Tomcat进程

#!/usr/bin/env python  # -*- coding:utf-8 -*-
  import commands
  import psutil
  import threading
  import json
  # 获取所有java进程的pid
  Pids=commands.getoutput('pidof java').split()
  def name(pid):
  p = psutil.Process(int(pid))
  # 应为zabbix监控,是使用zabbix用户,所以cwd参数会报权限不足
  #dir = p.cwd().split(r'/')
  #return str(dir[-2]).split(r'_')[-1]
  # 这种办法虽然Low一点,但是目前来说,是可以使用的
  return p.cmdline()[-4].split(r'/')[-1]
  pids={}
  data=[]
  for i in Pids:
  scn={}
  scn=i
  scn = name(i)
  data.append(scn)
  pids["data"] = data
  print json.dumps(pids)
页: [1]
查看完整版本: Zabbix自动发现监控Tomcat进程