#!/bin/env python
# -*- coding: utf-8 -*-
##########################################################
# @This script is used to Install zabbix clent for Windows(32/64)
# @Function: Install zabbix clent for Windows
# @Create Date: 2013-01-02
#打包官方zabbix_agents_2.0.4.win.zip为rar包,指定解压软件rar的路径。
##########################################################
import os,re,sys,urllib,wmi
c = wmi.WMI ()
for s in c.Win32_Service ():
if s.Caption == "Zabbix Agent":
sys.exit("zabbix already install")
url = 'http://192.168.110.110/zabbix_agents_2.0.4.win.rar'
local = 'C:\\zabbix_agents_2.0.4.win.rar'
urllib.urlretrieve(url,local,)
url = 'http://192.168.110.110/rar.exe'
local = 'C:\\rar.exe'#本地如果安装了指定相应的目录
urllib.urlretrieve(url,local,)
os.popen('C:\\rar.exe x -y C:\\zabbix_agents_2.0.4.win.rar -ed C:\\')
sProgramFiles = os.environ['PROGRAMFILES']
if "(86)" in sProgramFiles:
os.popen('C:\\zabbix\\bin\\win64\\zabbix_agentd.exe -c C:\\zabbix\\conf\\zabbix_agentd.win.conf -i')
else: www.zzzyk.com
os.popen('C:\\zabbix\\bin\\win32\\zabbix_agentd.exe -c C:\\zabbix\\conf\\zabbix_agentd.win.conf -i')
#以下是添加windows网卡流量监控的自定key,注意:一般的执行命令或脚本自定义key格式为:UserParameter=keyname,commd,网卡的为 PerfCounter=keyname,""
conm = os.popen('typeperf.exe -qx|find "Network Inte易做图ce"|find "Bytes"|find /v "Total"|find /v "Loopback"').readlines()
f=open('C:\zabbix\conf\zabbix_agentd.win.conf','a+')
f.write('\n')
e = 0
for i in range(len(conm)):
c = re.search('Sent',conm[i])
if c:
b = "PerfCounter " + "=" + " eth"+str(e) + "_Out," + '"''"' + str(conm[i]).strip() + '",30'
#print b
f.write("%s \n" %b)
e += 1
e = 0
for i in range(len(conm)):
c = re.search('Received',conm[i])
if c:
b = "PerfCounter " + "=" + " eth"+str(e) + "_In," + '"' + str(conm[i]).strip() + '",30'
#print b
f.write("%s \n" %b)
e += 1
f.close()
'''''
f = open('C:\zabbix\zabbix_agentd.conf','r+')
ip = f.read()
ip = ip.replace('192.168.1.100',ipnew)
f.seek(0)
f.write(ip)
f.close()
'''
os.popen('net start "Zabbix Agent"')
os.popen('net stop "Zabbix Agent"')
os.popen('net start "Zabbix Agent"')
os.remove('C:\\rar.exe')
os.remove('C:\\zabbix_agents_2.0.4.win.rar')
sys.exit("zabbix install success !")