Mercurial > pub > ImplabNet
comparison Implab/Diagnostics/LogChannel.cs @ 92:4c0e5ef99986 v2
rewritten tracing
author | cin |
---|---|
date | Wed, 22 Oct 2014 18:37:56 +0400 |
parents | d9d794b61bb9 |
children | 04d4c92d0f28 |
comparison
equal
deleted
inserted
replaced
91:cdaaf4792c22 | 92:4c0e5ef99986 |
---|---|
25 } | 25 } |
26 | 26 |
27 /// <summary> | 27 /// <summary> |
28 /// Событие появление новой записи в журнале, на это событие подписываются слушатели. | 28 /// Событие появление новой записи в журнале, на это событие подписываются слушатели. |
29 /// </summary> | 29 /// </summary> |
30 public event EventHandler<ValueEventArgs<TEvent>> Events; | 30 public event EventHandler<LogEventArgs<TEvent>> Events; |
31 | 31 |
32 /// <summary> | 32 /// <summary> |
33 /// Имя канала, полезно для отображения в журнале | 33 /// Имя канала, полезно для отображения в журнале |
34 /// </summary> | 34 /// </summary> |
35 public string Name { | 35 public string Name { |
36 get; | 36 get; |
61 /// <remarks> | 61 /// <remarks> |
62 /// Контекст трассировки от которого рассылается сообщение определяется автоматически из текущего потока. | 62 /// Контекст трассировки от которого рассылается сообщение определяется автоматически из текущего потока. |
63 /// </remarks> | 63 /// </remarks> |
64 public void LogEvent(TEvent data) { | 64 public void LogEvent(TEvent data) { |
65 var t = Events; | 65 var t = Events; |
66 if (t!= null) | 66 if (t != null) { |
67 t(TraceContext.Current,new ValueEventArgs<TEvent>(data)); | 67 var traceContext = TraceContext.Instance; |
68 } | 68 t( |
69 | 69 this, |
70 /// <summary> | 70 new LogEventArgs<TEvent>( |
71 /// Отправляет запись журнала через канал подписчикам. | 71 data, |
72 /// </summary> | 72 traceContext.ThreadId, |
73 /// <param name="data">Запись журнала.</param> | 73 traceContext.CurrentOperation, |
74 /// <param name="context">Контекст трассировки от которого рассылается сообщение/</param> | 74 traceContext.CurrentOperation.Duration |
75 public void LogEvent(TraceContext context,TEvent data) { | 75 ) |
76 var t = Events; | 76 ); |
77 if (t != null) | 77 } |
78 t(context, new ValueEventArgs<TEvent>(data)); | |
79 } | 78 } |
80 } | 79 } |
81 } | 80 } |