在跟踪侦听器关闭时添加页脚

本文关键字:添加 跟踪 侦听器 | 更新日期: 2023-09-27 18:11:10

如何在app.config中定义的跟踪侦听器中添加页脚:

<system.diagnostics>
<switches>
  <!-- Set loglevel for diagnostic messages
  (0=none, 1=errors, 2=warnings, 3=info, 4=verbose) -->
  <add name="logLevel" value="4" />
</switches>
<trace autoflush="true" indentsize="4">
  <listeners>
    <add name="FileListener"
         type="System.Diagnostics.TextWriterTraceListener"
         initializeData="Logs'QFXLog.txt" />
    <remove name="Default" />
  </listeners>
</trace>

当这个监听器关闭时,我想写一个结束页脚。在配置中定义哪些条目(如果有的话?)以及必须在代码中定义页脚字符串的地方?

谢谢,Juergen

在跟踪侦听器关闭时添加页脚

我不知道有什么方法可以直接在app.config文件中处理这个问题,但是你可以实现一个继承TextWriterTraceListener的类,然后覆盖它的Close方法:

namespace MyNamespace
{
    public class FormattedTextTracer : TextWriterTraceListener
    {
        public override void Close()
        {
             // Write footer
             Writer.WriteLine("==== Footer ====");
             Writer.Flush();
             base.Close();
        }
    }
}

在app.config文件中,用你的类替换listener类型:

<listeners>
    <add name="FileListener"
     type="MyNamespace.FormattedTextTracer, MyNamespace"
     initializeData="Logs'QFXLog.txt" />
    <remove name="Default" />
</listeners>