web-dev-qa-db-ja.com

シンプルなインターネット接続稼働時間モニター

インターネット接続がダウンする頻度とその期間を監視する必要があります。私はpythonのビットを毎分8.8.8.8にpingするだけですが、これを実行するユーティリティがあるはずだと思っていました-そして素敵なレポートを生成します

ただし、これは単純なSOHOタイプの接続を備えたブランチオフィスであり、SNMPルーターはなく、Windowsのみで、タスク専用ではないデスクトップマシンで実行する必要があります。

容量やpingのレイテンシなどを知る必要はありません。ケーブル会社で手を振るために数秒以上ダウンした回数のレポートだけです。

8
Martin Beckett

Pingdom を使用して、これを逆に行います。無料アカウント、1つのチェック。 WANルーターのIPアドレスにpingを送信します。これで問題ありません。毎月の稼働時間レポートが届き、ケーブル会社に連絡することができます。

5
Tom O'Connor

私は現在、同様の問題(ブランチオフィスでのDSL障害)を調査しています。 PingPlotterをリモートで実行しています。これはWindowsプログラムであり、読み取りが簡単なグラフを生成します。グラフを使用して、リンクがドロップする時間をISPに通知しました。

(今、ISPが実際に修正するのを待っています-電話会社をより速く動作させるためのヒントがある場合はお知らせください!)

1
Mitch Miller

別の良い選択は http://www.alertfox.com/ です。無料のWebサイトモニタリング、トランザクションテスト、およびレポートです。

1
user55988

utilは知りませんが、Perlを使用して簡単なコードを自分で作成しました。

#!/usr/bin/Perl

use Net::Ping;
use POSIX qw/strftime/;

if (-e '/var/run/net_test.pid') {
        print "net_test already running.\n";
        exit;
} else {
        system "touch /var/run/net_test.pid";
}

my $Host   = "www.google.com";
my $ping   = Net::Ping->new('icmp');
my $result = $ping->ping($Host,2);

if ($result != 1) {
        $format = strftime('[%d/%m/%Y %H:%M:%S]',localtime)." Internet is not available...";
        $run = `echo $format >> /var/log/virtua_net`;
        while ($result != 1) {
                $result = $ping->ping($Host,2);
                sleep 60;
        }
        $format = strftime('[%d/%m/%Y %H:%M:%S]',localtime)." Internet is back...";
        $run = `echo $format >> /var/log/virtua_net`;
} else {
        $format = strftime('[%d/%m/%Y %H:%M:%S]',localtime)." Internet is ok...";
        $run = `echo $format >> /var/log/virtua_net`;
}
$ping->close();

system "rm -rf /var/run/net_test.pid" if (-e "/var/run/net_test.pid");
exit;

これは、実行するたびにgoogleにpingしようとし、応答があったかどうかにかかわらず、時間とともにインターネットに接続できなかった場合に後で確認できるように、ファイルに出力します。

あなたがそれを好きなら、私はwindowsで使用されるように小さな変更を加えることができます、そしてあなたはすべてであるActivePerlをインストールする必要がありました。

必要な唯一の変更は、ウィンドウ上で他とは異なる可能性のあるパスとコマンドです。

1
Prix

Powershellはすばやく汚れています

while ($true) {

  #if (test-connection -count 1 Microsoft.com -Quiet) {    



  if (test-connection -count 1 google.com ) {    
   $result=(get-date).ToString("yyyy-MM-dd hh:mm:ss")
   $result = "$result ok"
   "$result" | Tee-Object -FilePath c:\~~temp\router_log.txt -append     #"$result" | Out-File -FilePath c:\~~temp\router_log.txt -append

   sleep 5

 } else {
    while (-not (test-connection -count 1 google.com -Quiet)) {    
        $result=(get-date).ToString("yyyy-MM-dd hh:mm:ss")
        $result = "$result down"
        "$result" | Tee-Object -FilePath c:\~~temp\router_log.txt -append
        sleep -millisecond 100
    }
}

}
0
tbone

PAサーバーモニター無料版 を試してください。範囲は限定されていますが、無料バージョンではPingを実行してグラフを作成します。 Windows上で実行され、邪魔にならないようにバックグラウンドサービスとして実行されます。

0
DougN