-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTelemetryHelper.cs
86 lines (76 loc) · 3.43 KB
/
TelemetryHelper.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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
//using Newtonsoft.Json;
//using System;
//using System.Net.Http;
//using System.Net.Http.Headers;
//using System.Text;
//using System.Threading.Tasks;
//namespace Optimizer
//{
// internal static class TelemetryHelper
// {
// const string GEO_LOOKUP_URL = "http://ip-api.com/json/";
// static TelemetryData telemetryEntry = new TelemetryData();
// internal static HttpClient TelemetryClient;
// internal const string TELEMETRY_API_URL = "";
// internal const string TELEMETRY_KEY = @"{OPTIMIZER-0EFC7B8A-D1FC-467F-B4B1-0117C643FE19-TELEMETRY}";
// internal static async void EnableTelemetryService()
// {
// TelemetryClient = new HttpClient();
// TelemetryClient.BaseAddress = new Uri(TELEMETRY_API_URL);
// TelemetryClient.DefaultRequestHeaders.Add("Optimizertelemetrykey", TELEMETRY_KEY);
// TelemetryClient.DefaultRequestHeaders
// .Accept
// .Add(new MediaTypeWithQualityHeaderValue("application/json"));
// await CacheTelemetryData();
// }
// internal static async Task<string> GetSessionCountry()
// {
// try
// {
// string result = await TelemetryClient.GetStringAsync(GEO_LOOKUP_URL);
// GeoLookupResult x = JsonConvert.DeserializeObject<GeoLookupResult>(result);
// if (x.status == "success")
// {
// return x.country;
// }
// else
// {
// return "Unknown";
// }
// }
// catch
// {
// return "Unknown";
// }
// }
// internal static async Task CacheTelemetryData()
// {
// telemetryEntry.Country = await GetSessionCountry();
// telemetryEntry.WindowsVersion = Utilities.GetWindowsDetails();
// telemetryEntry.DotNetVersion = Utilities.GetNETFramework();
// telemetryEntry.OptimizerVersion = Program.GetCurrentVersionTostring();
// telemetryEntry.UnsafeMode = Program.UNSAFE_MODE.ToString();
// telemetryEntry.ExperimentalBuild = Program.EXPERIMENTAL_BUILD.ToString();
// telemetryEntry.TelemetryID = Options.CurrentOptions.TelemetryClientID;
// }
// internal static void GenerateTelemetryData(string functionName, string errorMessage, string errorStackTrace)
// {
// telemetryEntry.Timestamp = string.Format("{0:yyyy-MM-ddTHH:mm:ss.FFFZ}", DateTime.UtcNow);
// telemetryEntry.LanguageCode = Enum.GetName(typeof(LanguageCode), Options.CurrentOptions.LanguageCode);
// telemetryEntry.SavedOptions = JsonConvert.SerializeObject(Options.CurrentOptions, Formatting.Indented);
// telemetryEntry.FunctionName = functionName;
// telemetryEntry.ErrorMessage = errorMessage;
// telemetryEntry.StackTrace = errorStackTrace;
// SendTelemetryData(telemetryEntry);
// }
// internal static void SendTelemetryData(TelemetryData entry)
// {
// try
// {
// StringContent bodyContent = new StringContent(JsonConvert.SerializeObject(telemetryEntry, Formatting.Indented), Encoding.UTF8, "application/json");
// TelemetryClient.PostAsync(TelemetryClient.BaseAddress, bodyContent);
// }
// catch { }
// }
// }
//}