Python检测网络延迟的代码

yipeiwu_com6年前Python基础

本文讲述了Python检测网络延迟的代码。分享给大家供大家参考,具体如下:

#!/usr/bin/env python 
# coding: utf-8 
# coding: cp950 
''''' 
Create Date: 2012-11-06 
Version: 1.0 
Description: Detection host survival 
Author: Victor 
QQ: 1409175531 
''' 
''''' Please run the script with root ''' 
import ping 
import sys 
def help(): 
 print ''''' 
Usage: 
%s <Dest_addr> <percent loss packages> <max round trip time> 
''' % (sys.argv[0]) 
try: 
 result = ping.quiet_ping(sys.argv[1], timeout=2, count=10, psize=64) 
 if int(result[0]) == 100: 
 print 'Critical - 宕机, 丢包率:%s%% | 报警阀值: >= %s%% 或 >=%s ms' % (result[0], int(sys.argv[2]), int(sys.argv[3])) 
 sys.exit(2) 
 else: 
 max_time = round(result[1], 2) 
 if int(result[0]) < int(sys.argv[2]) and int(result[1]) < int(sys.argv[3]): 
 print 'OK - 丢包率:%s%%, 最大响应时间:%s ms | 报警阀值: >= %s%% 或 >=%s ms' % (result[0], max_time, int(sys.argv[2]), int(sys.argv[3])) 
 sys.exit(0) 
 elif int(result[0]) >= int(sys.argv[2]) or int(result[1]) >= int(sys.argv[3]): 
 print 'Warning - 丢包率:%s%%, 最大响应时间:%s ms | 报警阀值: >= %s%% 或 >=%s ms' % (result[0], max_time, int(sys.argv[2]), int(sys.argv[3])) 
 sys.exit(1) 
 else: 
 print 'Unknown' 
 sys.exit(3) 
except IndexError: 
 help() 
 sys.exit(3) 

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

python发送arp欺骗攻击代码分析

复制代码 代码如下:# -*- coding: cp936 -*-from scapy.all import *from threading import Thread,Lock,act...

python如何实现代码检查

前言 通常我们的python代码都是遵循PEP8的规范化格式,目的是为了保持代码的一致性、可读性。,这里给大家推荐几个常用的静态代码检查工具,大家可以酌情选择使用 1. pylint...

python的一些加密方法及python 加密模块

1base64 Python内置的base64模块可以实现base64、base32、base16、base85、urlsafe_base64的编码解码,python 3.x通常输入输出...

python实现连接mongodb的方法

本文实例讲述了python实现连接mongodb的方法。分享给大家供大家参考。具体分析如下: 通过pymongo可以很容易的链接到mongodb,下面的代码链接到本地mongodb,数据...

剖析Python的Twisted框架的核心特性

一. reactor twisted的核心是reactor,而提到reactor不可避免的是同步/异步,阻塞/非阻塞,在Dave的第一章概念性介绍中,对同步/异步的界限有点模糊,关于同步...