Zabbix第二式-获取Windows进程运行状态(Python)

进程检查是很重要的一环,俺可不能被江湖侠女的华丽外表和虚假花招所蒙蔽,摸清底细很重要,活着喊一死了喊二,不死不活不管。

#-*- coding:utf-8 -*-

import win32com.client,sys

def check_exsit(process_name):
WMI = win32com.client.GetObject(‘winmgmts:’)
processCodeCov = WMI.ExecQuery(‘select * from Win32_Process where Name=”%s”‘ % process_name)
if len(processCodeCov) > 0:
#        print ‘%s is exists’ % process_name
return 1
else:
#        print ‘%s is not exists’ % process_name
return 0
if __name__ == ‘__main__’:
status = check_exsit(sys.argv[1])
print status

 

PS:使用proc.num[进程名,用户名]可以监控指定用户进程数量,用户可以省略

Zabbix起手式-获取Windows下MySQL运行状态(Powershell)

当年遇到拦路虎,搜遍江湖只也没有对应的招式,站在瘟家妞墙外,心似爪挠而不可得,相反Linux下的已经烂大街了。

param($Check)   #由Zabbix导入检查项
$result = mysql -uzabbix -e “show global status like ‘$Check'”
cls
# PS 2.0环境下截取状态值
$value = (-split $result)[-1]
# PS 3.0环境下截取状态值
[string]$convert = $result.trim(‘Variable_name’+’Value’+$Check)
$value = $convert.trim()
cls
[float]$value