應用程式或電腦設定檔中保存決定網路追蹤格式與內容的設定。 執行此程序前,請確保已啟用追蹤功能。 更多資訊請參閱 啟用網路追蹤。
電腦設定檔 machine.config,儲存在 %windir%\Microsoft.NET\Framework 資料夾中。 在 \Microsoft.NET\Framework%windir% 資料夾中,每個安裝於電腦上的 .NET Framework 版本,都有一個獨立的 machine.config 檔案,例如:
- C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\machine.config
- C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config
這些設定也可以在應用程式的設定檔中進行,該設定檔優先於電腦設定檔。
設定網路追蹤
要設定網路追蹤,請在適當的設定檔中加入以下行。 這些設定的數值與選項詳見下表。
<configuration>
<system.diagnostics>
<sources>
<source name="System.Net" tracemode="includehex" maxdatasize="1024">
<listeners>
<add name="System.Net"/>
</listeners>
</source>
<source name="System.Net.Cache">
<listeners>
<add name="System.Net"/>
</listeners>
</source>
<source name="System.Net.Http">
<listeners>
<add name="System.Net"/>
</listeners>
</source>
<source name="System.Net.Sockets">
<listeners>
<add name="System.Net"/>
</listeners>
</source>
<source name="System.Net.WebSockets">
<listeners>
<add name="System.Net"/>
</listeners>
</source>
</sources>
<switches>
<add name="System.Net" value="Verbose"/>
<add name="System.Net.Cache" value="Verbose"/>
<add name="System.Net.Http" value="Verbose"/>
<add name="System.Net.Sockets" value="Verbose"/>
<add name="System.Net.WebSockets" value="Verbose"/>
</switches>
<sharedListeners>
<add name="System.Net"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="network.log"
traceOutputOptions="ProcessId, DateTime"
/>
</sharedListeners>
<trace autoflush="true"/>
</system.diagnostics>
</configuration>
方法的追蹤輸出結果
當你在區塊中新增名稱 <switches> 時,trace 輸出會包含與該名稱相關的某些方法資訊。 下表描述了輸出:
| 名稱 | 產出來源 |
|---|---|
System.Net.Sockets |
Socket、TcpListener、TcpClient 和 Dns 類的一些公開方法。 |
System.Net |
部分公開的方法包括 HttpWebRequest、 HttpWebResponse、 FtpWebRequest和 FtpWebResponse 類別,以及 SSL 除錯資訊(無效憑證、缺少發行者名單及用戶端憑證錯誤)。 |
System.Net.HttpListener |
HttpListener、HttpListenerRequest 和 HttpListenerResponse 類別中的一些公用方法。 |
System.Net.Cache |
在System.Net.Cache中,有一些私有及內部方法。 |
System.Net.Http |
一些公開方法的 HttpClient、DelegatingHandler、HttpClientHandler、HttpMessageHandler、MessageProcessingHandler、和WebRequestHandler類別。 |
System.Net.WebSockets.WebSocket |
一些公開方法的ClientWebSocket 和 WebSocket 類別。 |
追溯輸出屬性
下表列出的屬性用於配置追蹤輸出:
| 屬性名稱 | 屬性值 |
|---|---|
value |
必備 String 屬性。 設定輸出的冗長程度。 合法的值為 Critical、 Error、 VerboseWarningInformation、 和 。此屬性必須設定在 add 元素的 switches 元素上。 若該屬性被設定在元素 source 上,則會拋出例外。範例: <add name="System.Net" value="Verbose"/> |
maxdatasize |
可選 Int32 屬性。 設定每條線路追蹤中包含的網路資料最大位元組數。 預設值為 1024。 此屬性必須設定在元素上 source 。 如果該屬性設定在該 switches 元素下方的元素上,則會拋出例外。範例: <source name="System.Net" tracemode="includehex" maxdatasize="1024"> |
tracemode |
可選 String 屬性。 設定為 includehex 以十六進位和文字格式顯示協定痕跡。 設定為 protocolonly 只顯示文字。 預設值是 includehex。此屬性必須設定在元素上 source 。 如果該屬性設定在該 switches 元素下方的元素上,則會拋出例外。範例: <source name="System.Net" tracemode="includehex" maxdatasize="1024"> |