文件首頁
MySQL Connector/NET 開發人員指南
相關文件 下載本手冊
PDF (美式信紙) - 1.3Mb
PDF (A4) - 1.3Mb


MySQL Connector/NET 開發人員指南  /  ...  /  使用 Connector/NET 追蹤來源物件

5.12.2 使用 Connector/NET 追蹤來源物件

.NET 追蹤架構包含四個主要部分

  • 來源 - 這是追蹤資訊的發起者。來源用於傳送追蹤訊息。Connector/NET 提供的來源名稱為 mysql

  • 切換 - 這定義要發出的追蹤資訊層級。通常,這會在 app.config 檔案中指定,因此無需重新編譯應用程式即可變更追蹤層級。

  • 接聽程式 - 追蹤接聽程式定義追蹤資訊將寫入的位置。支援的接聽程式包括,例如,Visual Studio 輸出視窗、Windows 事件記錄檔和主控台。

  • 篩選器 - 篩選器可以附加到接聽程式。篩選器決定將寫入的追蹤資訊層級。雖然切換定義將寫入所有接聽程式的資訊層級,但篩選器可以以每個接聽程式為基礎進行套用,從而提供更精細的追蹤資訊控制。

若要使用追蹤,MySql.Data.MySqlClient.MySqlTrace 可用作 Connector/NET 的追蹤來源,且連線字串必須包含 "Logging=True"

若要啟用追蹤訊息,請設定追蹤切換。追蹤切換與之相關聯的追蹤層級列舉包括 關閉錯誤警告資訊詳細

MySqlTrace.Switch.Level = SourceLevels.Verbose;

這會將追蹤層級設定為 詳細,表示將寫入所有追蹤訊息。

能夠在無需重新編譯程式碼的情況下變更追蹤層級是很方便的。這可以透過在應用程式設定檔 app.config 中指定追蹤層級來達成。然後,您只需在設定檔中指定所需的追蹤層級,並重新啟動應用程式即可。追蹤來源是在檔案的 system.diagnostics 區段中設定。以下 XML 片段說明了這一點

<configuration>
  ...
  <system.diagnostics>
    <sources>
      <source name="mysql" switchName="MySwitch"
              switchType="System.Diagnostics.SourceSwitch" />
      ...
    </sources>
    <switches>
      <add name="MySwitch" value="Verbose"/>
      ...
    </switches>
  </system.diagnostics>
  ...
</configuration>

預設情況下,追蹤資訊會寫入 Microsoft Visual Studio 的輸出視窗。有各種各樣的接聽程式可以附加到追蹤來源,以便將追蹤訊息寫入不同的目的地。您也可以建立自訂接聽程式,以允許將追蹤訊息寫入其他目的地,例如行動裝置和 Web 服務。常用的接聽程式範例是 ConsoleTraceListener,它會將追蹤訊息寫入主控台。

若要在執行階段新增接聽程式,請使用下列程式碼

ts.Listeners.Add(new ConsoleTraceListener());

然後,呼叫追蹤來源物件上的方法來產生追蹤資訊。例如,可以使用 TraceInformation()TraceEvent()TraceData() 方法。