通过python粘接,替代了shell判断状态是否ok的步骤。简单方便
#encoding=utf8
import os
import time
import socket
import commands
def checktcp(ip,port,ser):
cmdstra="netstat -atn|grep "+port
(status, output) = commands.getstatusoutput(cmdstra)
if output:
print "service %s==port=%s is up true" %(ser,port)
return True
else:
print '%s tcp is down but now we will restart it !!!' % ser
if ser=="alarmdata ser":
startcmd="cd /root/test/testalarm;./start.sh&"
try:
os.system(startcmd)
print "%s restarted succeed!!"%ser
return True
except:
return False
def checkudp(ip ,port ,ser):
cmdstra="netstat -aun|grep "+port
(status, output) = commands.getstatusoutput(cmdstra)
if output:
print "service %s==port=%s is up true" %(ser,port)
else:
print "service %s==port=%s is down false restarting service" %(ser,port)
if ser=="config ser":
startcmd="cd /root/test/testConfigSvr/bin;./start.sh>>localcongif.log"
try:
os.system(startcmd)
print "%s restarted succeed!!"%ser
except:
pass
if __name__ == '__main__':
for i in range(30):
checktcp('127.0.0.1', "11002",u"alarmdata ser")
checkudp("127.0.0.1","11003",u"config ser")
time.sleep(2)