protected override string GetFormattedMessage(global::NLog.LogEventInfo logEvent) { var wrappedEvent = new LogEventWrapper(logEvent); PrepareEvent(wrappedEvent); var builder = new StringBuilder(); using (var writer = XmlWriter.Create(builder, new XmlWriterSettings() { OmitXmlDeclaration = true, Encoding = Encoding.UTF8, Indent = true, IndentChars = "\t" })) { var element = new XElement("message", new XAttribute("time", logEvent.TimeStamp.ToUniversalTime().ToString("u", CultureInfo.InvariantCulture)), new XAttribute("source", logEvent.LoggerName), new XAttribute("level", logEvent.Level), new XAttribute("message", logEvent.FormattedMessage) ); if (logEvent.Exception != null) { element.Add(FormatException(logEvent.Exception)); } object extendedInfo; if (logEvent.Properties.TryGetValue("extendedInfo", out extendedInfo) && extendedInfo != null) { element.Add(new XElement("extendedInfo", extendedInfo)); } foreach (var interceptor in LogEventInterceptorProviders.Providers.GetInterceptors()) { interceptor.Render(wrappedEvent, element); } element.Save(writer); } return(builder.ToString()); }
protected override string GetFormattedMessage(global::NLog.LogEventInfo logEvent) { var wrappedEvent = new LogEventWrapper(logEvent); PrepareEvent(wrappedEvent); var builder = new StringBuilder(); using (var writer = XmlWriter.Create(builder, new XmlWriterSettings() { OmitXmlDeclaration = true, Encoding = Encoding.UTF8, Indent = true, IndentChars = "\t" })) { var element = new XElement("message", new XAttribute("time", logEvent.TimeStamp.ToUniversalTime().ToString("u", CultureInfo.InvariantCulture)), new XAttribute("source", logEvent.LoggerName), new XAttribute("level", logEvent.Level), new XAttribute("message", logEvent.FormattedMessage) ); if (logEvent.Exception != null) element.Add(FormatException(logEvent.Exception)); object extendedInfo; if (logEvent.Properties.TryGetValue("extendedInfo", out extendedInfo) && extendedInfo != null) element.Add(new XElement("extendedInfo", extendedInfo)); foreach (var interceptor in LogEventInterceptorProviders.Providers.GetInterceptors()) interceptor.Render(wrappedEvent, element); element.Save(writer); } return builder.ToString(); }