Example #1
0
        internal static MonitorEventScope RaiseScope(MonitorEventEntry startEvent)
        {
            var timingHandle = new TimingHandle();

            startEvent.OpCode = MonitorEventOpCode.Start;
            Raise(startEvent);

            return(new MonitorEventScope(startEvent));
        }
        protected override async Task OnBufferedEventAsync(MonitorEventEntry e)
        {
            string message = String.Format("({0}:{1})[{2}:{3}]: {4}", e.Level, e.OpCode, e.Source, e.Name, e.Detail);

            if (e.OpCode == MonitorEventOpCode.Stop)
            {
                message += String.Format("({0:0.00}ms),", e.RuntimeMilliseconds);
            }

            await Console.Out.WriteLineAsync(message);
        }
Example #3
0
        internal static MonitorEventEntry Raise(MonitorEventEntry monitorEvent)
        {
            if (Interlocked.CompareExchange(ref s_consumerCount, 0, 0) == 0)
            {
                return(monitorEvent);
            }

            List <IMonitorEventConsumer> result;

            if (FlagToConsumerLookup.TryGetValue(CombineFlags(monitorEvent), out result))
            {
                lock (result)
                {
                    foreach (var item in result)
                    {
                        item.OnEvent(monitorEvent);
                    }
                }
            }

            return(monitorEvent);
        }
 internal EventPublisherSource(MonitorEventEntry defaults)
 {
     _defaults = defaults;
 }
Example #5
0
 protected virtual void OnBufferedEvent(MonitorEventEntry e)
 {
     throw new NotImplementedException();
 }
Example #6
0
 protected virtual Task OnBufferedEventAsync(MonitorEventEntry e)
 {
     throw new NotImplementedException();
 }
Example #7
0
 public void OnEvent(MonitorEventEntry e)
 {
     _buffer.Post(e);
 }
 internal MonitorEventScope(MonitorEventEntry start)
 {
     _timing    = new TimingHandle();
     this.Start = start;
 }
Example #9
0
 /// <summary>
 /// Creates an event source for publishing events.
 /// </summary>
 /// <param name="defaults">Default event properties.</param>
 /// <returns>Event publisher source.</returns>
 public static EventPublisherSource CreateEventSource(MonitorEventEntry defaults)
 {
     return(new EventPublisherSource(defaults));
 }
Example #10
0
 internal static int CombineFlags(MonitorEventEntry e)
 {
     return(CombineFlags((short)e.OpCode, (short)e.Level));
 }