/ csharp / SharpLDAPmonitor / Logger.cs
Logger.cs
 1  using System;
 2  using System.IO;
 3  
 4  namespace SharpLDAPMonitor
 5  {
 6      public class Logger
 7      {
 8          Boolean debug = false;
 9          String logfile = null;
10  
11          public Logger(String logfile=null, Boolean debug=false)
12          {
13              this.logfile = logfile;
14              this.debug = debug;
15              if (this.logfile != null)
16              {
17                  // Init logfile (overwrite)
18                  using (FileStream aFile = new FileStream(this.logfile, FileMode.Create, FileAccess.Write)) { }
19              }
20          }
21  
22          public void Debug(String message)
23          {
24              if (this.debug == true)
25              {
26                  Console.WriteLine("[debug] "+message);
27                  if (this.logfile != null)
28                  {
29                      using (FileStream aFile = new FileStream(this.logfile, FileMode.Append, FileAccess.Write))
30                      using (StreamWriter sw = new StreamWriter(aFile))
31                      {
32                          sw.WriteLine("[debug] " + message);
33                      }
34                  }
35              }
36          }
37  
38          public void WriteLine(String message)
39          {
40              Console.WriteLine(message);
41              if (this.logfile != null)
42              {
43                  using (FileStream aFile = new FileStream(this.logfile, FileMode.Append, FileAccess.Write))
44                  using (StreamWriter sw = new StreamWriter(aFile))
45                  {
46                      sw.WriteLine(message);
47                  }
48              }
49          }
50  
51          public void Warning(String message)
52          {
53              Console.WriteLine("[!] " + message);
54              if (this.logfile != null)
55              {
56                  using (FileStream aFile = new FileStream(this.logfile, FileMode.Append, FileAccess.Write))
57                  using (StreamWriter sw = new StreamWriter(aFile))
58                  {
59                      sw.WriteLine("[!] " + message);
60                  }
61              }
62          }
63      }
64  }