有没有办法按需刷新WCF跟踪?

Pio*_*iak 9 wcf trace flush

就像有一个命令来刷新IIS7日志:

netsh http flush logbuffer
Run Code Online (Sandbox Code Playgroud)

我想知道是否有类似的命令来按需刷新WCF跟踪日志.

Dan*_*llo 29

autoflush="true".config文件中设置确保跟踪源在每次跟踪后刷新到磁盘.

以下是一个示例配置文件autoflush="true":

<configuration>
 <system.diagnostics>
  <sources>
   <source name="System.ServiceModel" switchValue="Warning, ActivityTracing"
                 propagateActivity="true">
     <listeners>
      <add name="xml" type="System.Diagnostics.XmlWriterTraceListener"
                      initializeData="e2eTraceTest.xml" />
    </listeners>
   </source>
  </sources>

  <trace autoflush="true" />

 </system.diagnostics>
</configuration>
Run Code Online (Sandbox Code Playgroud)

此外,如果您愿意将WCF跟踪存储在数据库中,您可能需要查看此帖子:

这将允许您实时查看WCF跟踪,而无需刷新它.

  • 这就是我最终做的.但是,我宁愿进行缓冲,以节省资源并允许按需刷新和缓冲区溢出(和/或资源使用率低).我认为从服务器的角度来看这将是有益的. (2认同)

Shi*_*iji 2

一种方法是重置 IIS,但这只是在开发网络上进行调试时的一个真正选项。