Python/Python for Windows

[Python] subprocess 모듈과 DOS ping 명령어를 이용한 핼스 체크

Pydole 2018. 5. 9. 01:34

파이썬 subprocess 모듈과 DOS ping 명령어를 이용한 IP ping 체크

 

DOS 명령어의 결과값을 이용하여 ping 체크 및 응답시간을 체크할 수 있다. Ping Check와 응답시간 임계치는

조건문을 이용하여 별도로 모니터링을 할 수 있다.

 


import subprocess
import re

pinglist = (ip1,ip2)

p = re.compile('[=]\s(\d+)[m][s]')

for i in pinglist:
    cmd = 'ping -n 3 '+i     # ping을 3번 수행
    try:
        for x in subprocess.check_output(cmd).splitlines():
            p1 = p.findall(str(x))

        print(i, 'Ping Ok','최소 응답시간: '+p1[0],'최대 응답시간: '+p1[1],'평균 응답시간: '+p1[2])

    except subprocess.CalledProcessError:
        print(i, 'Ping Check')

-----------------------------------------------------------------------------------------------

IP1 Ping Check
IP2 Ping Ok 최소 응답시간: 2ms 최대 응답시간: 3ms 평균 응답시간: 2ms