示例#1
0
        internal static string FormatRawPayload(LogEvent logEvent)
        {
            var payload = new StringWriter();

            payload.Write("{\"Events\":[");
            RawJsonFormatter.FormatContent(logEvent, payload);
            payload.Write("]}");
            return(payload.ToString());
        }
示例#2
0
        private static void BuildLogEvent(IEnumerable <LogEvent> logEvents, TextWriter payload)
        {
            payload.Write("[");
            var eventSeparator = "";

            foreach (var evnt in logEvents)
            {
                payload.Write(eventSeparator);
                eventSeparator = ",";
                RawJsonFormatter.FormatContent(evnt, payload);
            }
            payload.Write("]");
        }
        void AssertValidJson(Action <ILogger> act)
        {
            var output    = new StringWriter();
            var formatter = new RawJsonFormatter();
            var log       = new LoggerConfiguration()
                            .WriteTo.Sink(new TextWriterSink(output, formatter))
                            .CreateLogger();

            act(log);

            var json = output.ToString();

            // Unfortunately this will not detect all JSON formatting issues; better than nothing however.
            JObject.Parse(json);
        }
        void AssertValidJson(Action<ILogger> act)
        {
            var output = new StringWriter();
            var formatter = new RawJsonFormatter();
            var log = new LoggerConfiguration()
                .WriteTo.Sink(new TextWriterSink(output, formatter))
                .CreateLogger();

            act(log);

            var json = output.ToString();

            // Unfortunately this will not detect all JSON formatting issues; better than nothing however.
            JObject.Parse(json);
        }