在C#中,我啓用了跟蹤和網絡跟蹤源。C#跟蹤截斷長消息
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<system.diagnostics>
<sources>
<source name="System.Net" tracemode="includehex" maxdatasize="1024">
<listeners>
<add name="System.Net"/>
</listeners>
</source>
</sources>
<switches>
<add name="System.Net" value="Verbose"/>
</switches>
<sharedListeners>
<add name="System.Net"
type="TraceTest.StringWriterTraceListener, TraceTest"
initializeData="myfile.log"
/>
</sharedListeners>
<trace autoflush="true" indentsize="4" />
</system.diagnostics>
</configuration>
但較長的消息被截斷(長的很像12KB/30日線,沒多久就像1GB!),所以我在這裏唯一的網絡reqiest頭部的一部分被記錄的情況下結束。
如何解決這個問題?
還是你知道一本書或一些資源,解釋.net跟蹤和調試非常詳細?
日誌例如:
System.Net Information: 0 : [1204] Connection#63291458 - Received headers
{
Transfer-Encoding: chunked
Connection: keep-alive
Keep-Alive: timeout=10
Content-Type: text/html; charset=windows-1251
Date: Mon, 04 Jul 2016 17:50:33 GMT
Set-Cookie: uid=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0,uid=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/,uid=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/; domain=.zamunda.net,pass=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0,pass=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/,pass=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/; domain=.zamunda.net,bitbucketz=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0,bitbucketz=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/,bitbucketz=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/; domain=.zamunda.net,cats=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0,cats=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/,cats=deleted;
expires=...}.
這是一個消息,在不知何故TraceListener
Write
方法被稱爲絲毫該正被截斷單個消息做爲參數(「...}」結尾)
而且餅乾可怕的書面和幾乎是不可分析的,但我可以忍受......
呀,可悲的是從System.dlls篡改或使用一些奇怪的和複雜的類型繼承除了沒有太多成爲 完成。
這不正是「maxdatasize」的用途嗎? 1024似乎有點低。 – spender
這麼想的,用32768和20000試了一下,但顯然不是這樣的,或者有一些其他屬性必須設置,但我無法找到屬性列表。奇怪的方式更大的網頁html被輸出爲hex而不被截斷,但我還沒有測試過這是否發生在一條消息中。 – JDE
如果你只對webrequests感興趣,爲什麼你不使用[Fiddler](http://www.telerik.com/fiddler) – rene