private static void SendSoundFailureLog(Client.Sound.SoundManagerException ex) { int fileID = new Random().Next(0xFFFFFF); var game = Game.Game.Instance; FeedbackCommon.Profile profile = null; if (game != null && game.FeedbackInfo != null && game.FeedbackInfo.Profile != null) profile = game.FeedbackInfo.Profile; FeedbackCommon.ProgramCrash pc = new FeedbackCommon.ProgramCrash { FileID = fileID, Profile = profile, DateSent = DateTime.Now, GameVersion = Program.GameVersion.ToString(), CrashType = "Sound system" }; pc.HttpPost(Settings.StatisticsURI); try { File.WriteAllText(Graphics.Application.ApplicationDataFolder + "Logs/SoundInitLog.txt", ex.InitLogString); File.WriteAllText(Graphics.Application.ApplicationDataFolder + "Logs/SoundException.txt", new System.Text.StringBuilder().AppendLine( ex.Message).AppendLine( ex.StackTrace).ToString() ); string fileName = String.Format(Graphics.Application.ApplicationDataFolder + "Logs/sil.{0:x6}.zip", fileID); using (ZipFile zipFile = new ZipFile()) { if (File.Exists(Graphics.Application.ApplicationDataFolder + "Logs/ApplicationLog.txt")) zipFile.AddFile(Graphics.Application.ApplicationDataFolder + "Logs/ApplicationLog.txt"); if (File.Exists(Graphics.Application.ApplicationDataFolder + "Logs/SoundInitLog.txt")) zipFile.AddFile(Graphics.Application.ApplicationDataFolder + "Logs/SoundInitLog.txt"); if (File.Exists(Graphics.Application.ApplicationDataFolder + "Logs/SoundException.txt")) zipFile.AddFile(Graphics.Application.ApplicationDataFolder + "Logs/SoundException.txt"); if (File.Exists(Graphics.Application.ApplicationDataFolder + "Settings.xml")) zipFile.AddFile(Graphics.Application.ApplicationDataFolder + "Settings.xml"); zipFile.Save(fileName); } FileUploader.UploadZipFile(new Uri(Settings.FileUploadURI), new FileInfo(fileName)); if (File.Exists(fileName)) File.Delete(fileName); } catch { // 'silently' fail } }
public static void SendCrashLog(String crashType) { int fileID = new Random().Next(0xFFFFFF); var game = Game.Game.Instance; FeedbackCommon.Profile profile = null; if (game != null && game.FeedbackInfo != null && game.FeedbackInfo.Profile != null) profile = game.FeedbackInfo.Profile; FeedbackCommon.ProgramCrash pc = new FeedbackCommon.ProgramCrash { FileID = fileID, Profile = profile, DateSent = DateTime.Now, GameVersion = Program.GameVersion.ToString(), CrashType = crashType }; pc.HttpPost(Settings.StatisticsURI); string fileName = Graphics.Application.ApplicationDataFolder + String.Format("DebugInfo.{0:x6}.zip", fileID); using (ZipFile zipFile = new ZipFile()) { if (File.Exists(Graphics.Application.ApplicationDataFolder + "Logs/ApplicationLog.txt")) zipFile.AddFile(Graphics.Application.ApplicationDataFolder + "Logs/ApplicationLog.txt"); if (File.Exists(Graphics.Application.ApplicationDataFolder + "Logs/DeviceSettingsLog.txt")) zipFile.AddFile(Graphics.Application.ApplicationDataFolder + "Logs/DeviceSettingsLog.txt"); if (File.Exists(Graphics.Application.ApplicationDataFolder + "Logs/MemoryLeaks.txt")) zipFile.AddFile(Graphics.Application.ApplicationDataFolder + "Logs/MemoryLeaks.txt"); if (File.Exists(Graphics.Application.ApplicationDataFolder + "Logs/RendererProfileLog.txt")) zipFile.AddFile(Graphics.Application.ApplicationDataFolder + "Logs/RendererProfileLog.txt"); if(File.Exists(Graphics.Application.ApplicationDataFolder + "Settings.json")) zipFile.AddFile(Graphics.Application.ApplicationDataFolder + "Settings.json"); if (File.Exists("DefaultSettings.json")) zipFile.AddFile("DefaultSettings.json"); if (File.Exists(Graphics.Application.ApplicationDataFolder + "Settings.xml")) zipFile.AddFile(Graphics.Application.ApplicationDataFolder + "Settings.xml"); if (File.Exists("DefaultSettings.xml")) zipFile.AddFile("DefaultSettings.xml"); zipFile.Save(fileName); } FileUploader.UploadZipFile(new Uri(Settings.FileUploadURI), new FileInfo(fileName)); if (File.Exists(fileName)) File.Delete(fileName); }