/// <summary> /// Build the exception report /// </summary> public ExceptionReport Build() { _stringBuilder = new StringBuilder(); ExceptionReporterExtensions.AppendDottedLine(_stringBuilder); if (_reportInfo.ShowGeneralTab) { BuildGeneralInfo(); } if (_reportInfo.ShowExceptionsTab) { BuildExceptionInfo(); } if (_reportInfo.ShowAssembliesTab) { BuildAssemblyInfo(); } if (_reportInfo.ShowConfigTab) { BuildConfigInfo(); } if (_reportInfo.ShowSysInfoTab) { BuildSysInfo(); } if (_reportInfo.ShowContactTab) { BuildContactInfo(); } return(new ExceptionReport(_stringBuilder)); }
private void BuildSysInfo() { _stringBuilder.AppendLine("[System Info]").AppendLine(); _stringBuilder.Append(SysInfoResultMapper.CreateStringList(_sysInfoResults)); ExceptionReporterExtensions.AppendDottedLine(_stringBuilder); _stringBuilder.AppendLine(); }
private void BuildAssemblyInfo() { var digger = new AssemblyReferenceDigger(_reportInfo.AppAssembly); _stringBuilder.AppendLine("[Assembly Info]") .AppendLine() .AppendLine(digger.CreateReferencesString()); ExceptionReporterExtensions.AppendDottedLine(_stringBuilder); _stringBuilder.AppendLine(); }
private void BuildContactInfo() { _stringBuilder.AppendLine("[Contact Info]") .AppendLine() .AppendLine("Email: " + _reportInfo.ContactEmail) .AppendLine("Web: " + _reportInfo.WebUrl) .AppendLine("Phone: " + _reportInfo.Phone) .AppendLine("Fax: " + _reportInfo.Fax); ExceptionReporterExtensions.AppendDottedLine(_stringBuilder); _stringBuilder.AppendLine(); }
private void BuildConfigInfo() { var configFilePath = ConfigReader.GetConfigFilePath(); if (!File.Exists(configFilePath)) { return; } _stringBuilder.AppendLine("[Config Settings]").AppendLine(); _stringBuilder.AppendLine(_fileReader.ReadAll(configFilePath)); ExceptionReporterExtensions.AppendDottedLine(_stringBuilder); _stringBuilder.AppendLine(); }
private void BuildExceptionInfo() { for (var index = 0; index < _reportInfo.Exceptions.Count; index++) { var exception = _reportInfo.Exceptions[index]; //TODO maybe omit a number when there's only 1 exception _stringBuilder.AppendLine(string.Format("[Exception Info {0}]", index + 1)) .AppendLine() .AppendLine(ExceptionHierarchyToString(exception)) .AppendLine(); ExceptionReporterExtensions.AppendDottedLine(_stringBuilder); _stringBuilder.AppendLine(); } }
private void BuildGeneralInfo() { _stringBuilder.AppendLine("[General Info]") .AppendLine() .AppendLine("Application: " + _reportInfo.AppName) .AppendLine("Version: " + _reportInfo.AppVersion) .AppendLine("Region: " + _reportInfo.RegionInfo) .AppendLine("Machine: " + _reportInfo.MachineName) .AppendLine("User: "******"Date: " + _reportInfo.ExceptionDate.ToShortDateString()) .AppendLine("Time: " + _reportInfo.ExceptionDate.ToShortTimeString()) .AppendLine(); _stringBuilder.AppendLine("User Explanation:") .AppendLine() .AppendFormat("{0} said \"{1}\"", _reportInfo.UserName, _reportInfo.UserExplanation) .AppendLine(); ExceptionReporterExtensions.AppendDottedLine(_stringBuilder); _stringBuilder.AppendLine(); }