Pythonでpingコマンドを実行し、サーバーの死活監視を行う方法についてソースコード付きでまとめました。
Pythonでping試験する方法
Pythonでping試験を使う場合、標準モジュール「subprocess」を使ってOSのpingコマンドを呼び出す方法が一般的です。
ただし、これだと外部環境に依存するためping試験ができる外部モジュールを使う手段もあります。
ping試験(subprocess編)
標準モジュール「subprocess」を使ってOSのpingコマンドを呼び出します。
サンプルコード
サンプルプログラムのソースコードです。
# -*- coding: utf-8 -*-
import subprocess
class Ping(object):
    def __init__(self, hosts):
        for host in hosts:
            # pingコマンド
            ping = subprocess.Popen(["ping", "-c", "1", host],
                stdout=subprocess.PIPE,
                stderr=subprocess.PIPE
            )
            # ping試験
            out, error = ping.communicate()
            # 接続できなかったら
            if error:
                print('[NG]: ' +  host + ', Msg->\'' + error.rstrip() + '\'')
            # 接続できたら
            else:
                print('[OK]: ' +  host)
def main():
    # ping試験するホスト
    hosts = ['www.google.com', 'algorithm.joho.info',]
    # ping試験
    Ping(hosts)
if __name__ == '__main__':
    main()
| – | 関連記事 | 
|---|---|
| 1 | ■Python入門 基本文法 | 
 

コメント