Example #1
0
 private static TraceEvent BuildTraceEvent(LoggingEvent loggingEvent, Guid? correlationId, Guid? batchId, string source)
 {
     TraceEvent traceEvent = new TraceEvent();
     traceEvent.BatchId = batchId;
     traceEvent.CorrelationId = correlationId;
     traceEvent.Exception = loggingEvent.ExceptionObject;
     traceEvent.HostName = Environment.MachineName;
     traceEvent.Id = Guid.NewGuid();
     traceEvent.Message = loggingEvent.RenderedMessage;
     traceEvent.Source = source;
     traceEvent.SourceCode = new SourceCode();
     traceEvent.SourceCode.ClassName = loggingEvent.LocationInformation.ClassName;
     traceEvent.SourceCode.FileName = loggingEvent.LocationInformation.FileName;
     traceEvent.SourceCode.LineNumber = loggingEvent.LocationInformation.LineNumber;
     traceEvent.SourceCode.MethodName = loggingEvent.LocationInformation.MethodName;
     traceEvent.Timestamp = loggingEvent.TimeStamp;
     traceEvent.UserName = loggingEvent.UserName;
     return traceEvent;
 }
Example #2
0
        public void Send(TraceEvent traceEvent)
        {
            if (traceEvent == null)
            {
                System.Diagnostics.Debug.WriteLine("The received Trace Event was null.");
                throw new ArgumentNullException("traceEvent");
            }

            string diagnosticMessage;
            if (traceEvent.CorrelationId == null)
            {
                diagnosticMessage = string.Format(CultureInfo.CurrentCulture, "Received Trace Event from Source '{0}'.", traceEvent.Source);
            }
            else
            {
                diagnosticMessage = string.Format(CultureInfo.CurrentCulture, "Received Trace Event from Source '{0}' with Correlation ID of '{1}'.", traceEvent.Source, traceEvent.CorrelationId);
            }

            System.Diagnostics.Debug.WriteLine(diagnosticMessage);

            // Send Trace Event to all clients.
            Clients.addTraceEvent(traceEvent);
        }