本文講述了Python檢測網絡延遲的代碼。分享給大家供大家參考,具體如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#!/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 ) |
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。
原文鏈接:https://blog.csdn.net/jailman/article/details/78343334