置顶

检查服务器端口的python脚本

作者:andy.zhang | 分类:编程脚本 | 浏览:1367 | 日期:2018年11月05日

1,需求:由于在服务器内检查端口是否存活,有一定的机率遇到僵尸进程

     需要在外部telnet端口检查,所以写了这个脚本 

2,暂时,只能用IP地址而不是域名(下一版本改进)。

3,代码如下:

#!/bin/bash evn python
# coding: utf-8
import os,socket,sys
def isValid(vIP,vPort):
        if not vPort.isdigit():
                return False
        Split=vIP.split('.')
        for i in  Split:
                if not i.isdigit():
                        return False
        return True
def checkTCPPort(vIP,vPort):
        if not isValid(vIP,vPort):
                return False
        else:
                isOk=True
                S = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
                S.settimeout(2)
                try:
                        S.connect((vIP,int(vPort)))
                        isOK = True
                except:
                        isOK = False
                        ErrorType,ErrorValue,ErrorTB = sys.exc_info()
                finally:
                        S.close()
                        return isOK
if __name__ == '__main__':
        if len(sys.argv) < 3:
                print "Usage:",sys.argv[0],"IP Port"
        else:
                tcpResult=checkTCPPort(sys.argv[1],sys.argv[2])
                if tcpResult:
                        print "OK"
                else:
                        os.system('python2 ~/script/mail_send.py xrzxq@126.com "ylcf ss-server\'s port  "'+ sys.argv[2]+ '" 连不上 "' )



发表评论

取消
微信二维码
微信二维码
支付宝二维码
点击关闭
  • 在线客服1