Advertisement
parabola949

Network Logging C#

Jun 24th, 2012
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.05 KB | None | 0 0
  1. using System;
  2. using System.IO;
  3. using System.Net.NetworkInformation;
  4. using System.Threading;
  5.  
  6. namespace Network_Uptime_Logging
  7. {
  8.     class Program
  9.     {
  10.         static DateTime change = DateTime.Now;
  11.         static bool up = true;
  12.         static bool wasUp = true;
  13.  
  14.         static void Main(string[] args)
  15.         {
  16.             new StreamWriter("c:\\netup.txt", true).WriteLine(change.ToString() + ":\t" + ((up) ? "System Up" : "System Down"));
  17.             new System.Media.SoundPlayer("c:\\windows\\media\\Speech " + (up ? "On" : "Off") + ".wav").Play();
  18.             while (true)
  19.             {
  20.                 int pingTime = 0;
  21.                 ConnectedDelegate dlgt = new ConnectedDelegate(IsConnectedToCharterDNS);
  22.                 pingTime = dlgt();
  23.                 Console.Write(pingTime + ",");
  24.                 Thread.Sleep(TimeSpan.FromSeconds(5));
  25.             }
  26.         }
  27.  
  28.         delegate int ConnectedDelegate();
  29.  
  30.         public static int IsConnectedToCharterDNS()
  31.         {
  32.             string CharterDNS = "68.113.206.10";
  33.             int result = 0;
  34.             try
  35.             {
  36.                 PingReply reply = new Ping().Send(CharterDNS);
  37.                 if (reply.Status == IPStatus.Success)
  38.                     result = (int)reply.RoundtripTime;
  39.             }
  40.             catch { }
  41.             Log(DateTime.Now, result);
  42.             return result;
  43.         }
  44.  
  45.         public static void Log(DateTime time, int pingTime)
  46.         {
  47.             up = pingTime == 0 ? false : true;
  48.             if (up != wasUp && change < DateTime.Now.AddMinutes(-1))
  49.             {
  50.                 change = DateTime.Now;
  51.                 wasUp = up;
  52.                 new StreamWriter("c:\\netup.txt", true).WriteLine(change.ToString() + ":\t" + ((up) ? "System Up" : "System Down"));
  53.                 new System.Media.SoundPlayer("c:\\windows\\media\\Speech " + (up ? "On" : "Off") + ".wav").Play();
  54.             }
  55.             new StreamWriter("c:\\netup.csv",true).Write(time.ToString() + "," + pingTime.ToString() + Environment.NewLine);
  56.         }
  57.     }
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement