-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathReporter.cs
52 lines (46 loc) · 1.4 KB
/
Reporter.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
using System;
using System.IO;
namespace gutenberg.collect
{
public class Reporter
{
public Reporter(ScanDirectory scanDir)
{
hostname = System.Net.Dns.GetHostName();
reportFile = scanDir + "/report.grdns";
}
public void Log(string text, ReportType type)
{
StreamWriter writer = new StreamWriter(reportFile, true);
writer.WriteLine("======================");
writer.WriteLine(hostname);
writer.WriteLine(DateTime.Now);
writer.WriteLine(text);
writer.WriteLine("======================");
writer.Close();
}
public void Dispatch()
{
if (File.Exists(reportFile))
{
FaTaPhat f = new FaTaPhat();
string remote = string.Format("scanbot-logs/{0}.{1}",
hostname, DateTime.Now.Ticks);
try
{
f.Connect();
f.Put(reportFile, remote,
System.Net.FtpClient.FtpDataType.ASCII);
f.Disconnect();
File.Delete(reportFile);
} catch (Exception) {}
}
}
string hostname;
string reportFile;
}
public enum ReportType {
Error,
Info
}
}