跟踪侦听器不写入跟踪信息
public sealed class Logger
{
private static TraceSource myTraceSource;
private Logger()
{
}
public static TraceSource Create()
{
if (myTraceSource == null)
return myTraceSource = new TraceSource("myTraceSource");
else
return myTraceSource;
}
public static void WriteInfo(string message)
{
myTraceSource.TraceEvent(TraceEventType.Information, 0, message);
myTraceSource.Flush();
}
public static void WriteError(Exception ex)
{
myTraceSource.TraceEvent(TraceEventType.Error, 1, ex.Message);
myTraceSource.Flush();
}
public static void WriteError(string message)
{
myTraceSource.TraceEvent(TraceEventType.Error, 1, message);
myTraceSource.Flush();
}
public static void WriteWarning(string message)
{
myTraceSource.TraceEvent(TraceEventType.Warning, 2, message);
myTraceSource.Flush();
}
public static void AddListener(TraceListener listener)
{
myTraceSource.Listeners.Add(listener);
}
public static void Close()
{
if (myTraceSource != null)
{
myTraceSource.Flush();
myTraceSource.Close();
}
}
}
下面是初始化跟踪源并添加侦听器的代码
Logger.Create();
TextWriterTraceListener myTextListener = new TextWriterTraceListener(LogCompletePath);
Logger.AddListener(myTextListener);
Logger.WriteError("error");
注意,我没有将 SytemDiagnostic
标记放入 appconfig
中,因为我想在代码中执行此操作。
public sealed class Logger
{
private static TraceSource myTraceSource;
private Logger()
{
}
public static TraceSource Create()
{
if (myTraceSource == null)
return myTraceSource = new TraceSource("myTraceSource");
else
return myTraceSource;
}
public static void WriteInfo(string message)
{
myTraceSource.TraceEvent(TraceEventType.Information, 0, message);
myTraceSource.Flush();
}
public static void WriteError(Exception ex)
{
myTraceSource.TraceEvent(TraceEventType.Error, 1, ex.Message);
myTraceSource.Flush();
}
public static void WriteError(string message)
{
myTraceSource.TraceEvent(TraceEventType.Error, 1, message);
myTraceSource.Flush();
}
public static void WriteWarning(string message)
{
myTraceSource.TraceEvent(TraceEventType.Warning, 2, message);
myTraceSource.Flush();
}
public static void AddListener(TraceListener listener)
{
myTraceSource.Listeners.Add(listener);
}
public static void Close()
{
if (myTraceSource != null)
{
myTraceSource.Flush();
myTraceSource.Close();
}
}
}
Below is the code to initialize the trace source and add listener
Logger.Create();
TextWriterTraceListener myTextListener = new TextWriterTraceListener(LogCompletePath);
Logger.AddListener(myTextListener);
Logger.WriteError("error");
Note I have not put the SytemDiagnostic
tag in appconfig
as I want to do it in code.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在另一个论坛得到了答案。我忘了提及源级别,默认情况下它设置为关闭
Got the answer in another forum. I forgot to mention Source Level and by default it is set to off