c#系统.Net跟踪日志-只跟踪一种方法而忽略其他方法



我用的是System。下面描述的网络跟踪:

http://ferozedaud.blogspot.com/2009/08/tracing-with-systemnet.html

但是这会跟踪HttpWebRequest的每个请求。跟踪文件非常大。我只想跟踪调用某个URI时发生的情况,例如:

https://api.example.com/oauth/RequestToken

因为在我的web应用程序运行了几个小时后,连接到这个URI有问题。

我想忽略对其他uri的所有请求,例如:

https://api.example.com/Foo

因为这些请求工作得很好,并且正在用我不需要的数据填充日志

您可能想要看一下Message Filters(向下滚动到页面的一半到名为"Message Filters"的部分)。这里的另一页专门介绍消息日志过滤器。以下是对您的示例的配置应该是什么样子的有根据的猜测:

<messageLogging logMessagesAtTransportLevel="true" logMessagesAtServiceLevel="true" >
   <filters>
        <add xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
                xmlns:a="http://www.w3.org/2005/08/addressing">
            /soap:Envelope/soap:Header/a:Action[starts-with(text(),'https://api.example.com/oauth/RequestToken')]
        </add>
   </filters>
</messageLogging>

这里还有一个跟踪日志过滤器的自定义实现,可能会有所帮助。

相关内容

  • 没有找到相关文章

最新更新