<為追蹤的<<接聽程式>新增>元素>
將接聽程式加入至 Listen 集合。
<configuration>
<system.diagnostics>
<trace>
<listeners>
<add>
語法
<add name="name"
type="trace listener class name, Version, Culture, PublicKeyToken"
initializeData="data"/>
屬性和項目
下列章節說明屬性、子元素和父元素。
屬性
屬性 | 描述 |
---|---|
type | 必要的 屬性。 指定接聽程式的型別。 您必須使用符合指定完整類型名稱中所指定需求的字串。 |
initializeData | 選用屬性。 傳遞至指定類別之建構函式的字串。 |
name | 選用屬性。 指定接聽程序的名稱。 |
子元素
元素 | 描述 |
---|---|
<filter> | 將篩選加入至追蹤集合中的 Listeners 接聽程式。 |
父項目
元素 | 描述 |
---|---|
configuration |
通用語言執行平台和 .NET Framework 應用程式所使用之每個組態檔中的根項目。 |
listeners |
指定收集、儲存和路由訊息的接聽程式。 接聽程式會將追蹤輸出導向至適當的目標。 |
system.diagnostics |
指定 ASP.NET 組態區段的根項目。 |
trace |
包含用於收集、儲存及路由傳送追蹤訊息的接聽項。 |
備註
Debug和 Trace 類別會共用相同的接聽程式集合。 如果您將接聽程序物件新增至其中一個類別中的集合,另一個類別會使用相同的接聽程式。 接聽程式類別衍生自 TraceListener。
如果您未指定 name
追蹤接聽程式的 屬性, Name 追蹤接聽程式的 會預設為空字串 (“” )。 如果您的應用程式只有一個接聽程式,您可以新增它而不指定名稱,並藉由指定名稱的空字串來移除它。 不過,如果您的應用程式有多個接聽程式,您應該為每個追蹤接聽程式指定唯一的名稱,這可讓您識別及管理和 Listeners 集合內的Listeners個別追蹤接聽程式。
注意
新增相同類型的多個追蹤接聽程式,且具有相同名稱,只會產生該型別的一個追蹤接聽程式,以及要新增至集合的名稱 Listeners
。 不過,您可以透過程序設計方式將多個相同的接聽程式新增至 Listeners
集合。
initializeData 屬性的值取決於您建立的接聽程序類型。 並非所有追蹤接聽程式都需要您指定 initializeData。
注意
當您使用 initializeData
屬性時,可能會收到編譯程式警告「未宣告 』initializeData' 屬性」。因為組態設定會根據無法辨識initializeData
屬性的抽象基類TraceListener進行驗證,因此會發生這個警告。 一般而言,您可以忽略具有採用參數之建構函式的追蹤接聽程序實作的這個警告。
下表顯示 .NET Framework 隨附的追蹤接聽程式,並描述其 initializeData 屬性的值。
追蹤接聽程序類別 | initializeData 屬性值 |
---|---|
System.Diagnostics.ConsoleTraceListener | 建 useErrorStream 構函式 ConsoleTraceListener 的值。 將 initializeData 屬性設定為 「true 」,以將追蹤和偵錯輸出寫入至 Console.Error;要寫入的 Console.Out“false ” |
System.Diagnostics.DelimitedListTraceListener | 寫入的檔名 DelimitedListTraceListener 。 |
System.Diagnostics.EventLogTraceListener | 現有事件記錄檔來源的名稱。 |
System.Diagnostics.EventSchemaTraceListener | 寫入的檔名 EventSchemaTraceListener 。 |
System.Diagnostics.TextWriterTraceListener | 寫入的檔名 TextWriterTraceListener 。 |
System.Diagnostics.XmlWriterTraceListener | 寫入的檔名 XmlWriterTraceListener 。 |
範例
下列範例示範如何使用 <add 元素來新增>接聽程式和接聽MyListener
MyEventListener
程式集合。 MyListener
會建立名為 MyListener.log
的檔案,並將輸出寫入檔案。 MyEventListener
會在事件記錄檔中建立專案。
<configuration>
<system.diagnostics>
<trace autoflush="true" indentsize="0">
<listeners>
<add name="myListener" type="System.Diagnostics.TextWriterTraceListener, system, version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\myListener.log" />
<add name="MyEventListener"
type="System.Diagnostics.EventLogTraceListener, system, version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="MyConfigEventLog"/>
<add name="configConsoleListener"
type="System.Diagnostics.ConsoleTraceListener, system, version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
</listeners>
</trace>
</system.diagnostics>
</configuration>
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應