/// <summary> /// Logs the specified error. /// </summary> /// <param name="error">The error.</param> public void Log(ResponseErrorWrapper error) { lock (Locker) { var file = ObtainLog(error.Username); using (var writer = File.AppendText(file)) { var entry = JsonConvert.SerializeObject(error, Formatting.Indented, new StringEnumConverter()); writer.Write(entry); } } }
/// <summary> /// Writes the trace. /// </summary> /// <param name="error">The error.</param> private static void WriteTrace(ResponseErrorWrapper error) { var logFormat = string.Format( TraceFormat, error.Occurred, error.Message, error.ClassName, error.MethodName); if (Debugger.IsAttached) { Trace.WriteLine(logFormat); } }
/// <summary> /// Creates the specified error wrapper using the given message. /// </summary> /// <param name="message">The message.</param> /// <param name="username">The username.</param> /// <param name="className">Name of the class.</param> /// <param name="methodName">Name of the method.</param> /// <returns>The error wrapper.</returns> public ResponseErrorWrapper Create(string message, string username, Type className, string methodName) { var retVal = new ResponseErrorWrapper { ClassName = className.FullName, Message = message, MethodName = methodName, Occurred = DateTime.Now, Username = username }; WriteTrace(retVal); logHelper.Log(retVal); return(retVal); }
/// <summary> /// Adds an error to the response object. /// </summary> /// <param name="error">The error.</param> public void AddError(ResponseErrorWrapper error) { Errors.Add(error); }