36
|
1 using System;
|
|
2 using System.Collections.Generic;
|
|
3 using System.Diagnostics;
|
|
4 using System.Linq;
|
|
5 using System.Text;
|
|
6 using System.Threading.Tasks;
|
|
7
|
|
8 namespace Implab.Diagnostics {
|
|
9 /// <summary>
|
40
|
10 /// Класс для публикации событий выполнения программы, события публикуются через <see cref="LogChannel{TraceEvent}"/>.
|
|
11 /// Журнал трассировки отражает логический ход выполнения программы и существует всегда, поскольку тесно связан с
|
|
12 /// контекстом трассировки.
|
36
|
13 /// </summary>
|
|
14 public static class TraceLog {
|
|
15 [Conditional("TRACE")]
|
|
16 public static void StartLogicalOperation() {
|
92
|
17 TraceContext.Instance.StartLogicalOperation();
|
36
|
18 }
|
|
19
|
|
20 [Conditional("TRACE")]
|
|
21 public static void StartLogicalOperation(string name) {
|
92
|
22 TraceContext.Instance.StartLogicalOperation(name);
|
36
|
23 }
|
|
24
|
|
25 [Conditional("TRACE")]
|
|
26 public static void EndLogicalOperation() {
|
92
|
27 TraceContext.Instance.EndLogicalOperation();
|
52
|
28 }
|
|
29
|
|
30 [Conditional("TRACE")]
|
36
|
31 public static void TraceInformation(string format, params object[] arguments) {
|
|
32 LogChannel<TraceEvent>.Default.LogEvent(TraceEvent.Create(TraceEventType.Information, format, arguments));
|
|
33 }
|
|
34
|
|
35 [Conditional("TRACE")]
|
|
36 public static void TraceWarning(string format, params object[] arguments) {
|
|
37 LogChannel<TraceEvent>.Default.LogEvent(TraceEvent.Create(TraceEventType.Warning, format, arguments));
|
|
38 }
|
|
39
|
|
40 [Conditional("TRACE")]
|
|
41 public static void TraceError(string format, params object[] arguments) {
|
|
42 LogChannel<TraceEvent>.Default.LogEvent(TraceEvent.Create(TraceEventType.Error, format, arguments));
|
|
43 }
|
|
44
|
|
45 [Conditional("TRACE")]
|
|
46 public static void TraceError(Exception err) {
|
|
47 TraceError("{0}", err);
|
|
48 }
|
|
49 }
|
|
50 }
|