Integration Services 提供一組豐富的自定義事件,用於撰寫套件和許多任務的日誌記錄。 您可以使用這些專案來儲存執行進度、結果和問題的詳細資訊,方法是記錄預先定義的事件或使用者定義的訊息以供稍後分析。 例如,您可以記錄批量插入開始和結束的時間,以識別數據包運行時的性能問題。
自定義日誌條目與套件和所有容器及工作可用的一組標準日誌事件不同。 自訂日誌條目是量身定做以擷取套件中特定工作的實用資訊。 例如,執行 SQL 工作的其中一個自定義記錄項目會記錄工作在記錄檔中執行的 SQL 語句。
所有日誌條目都包含日期和時間資訊,包括程式包開始和完成時自動寫入的日誌條目。 許多記錄事件會將多個項目寫到記錄檔。 這通常會在事件有不同的階段時發生。 例如, ExecuteSQLExecutingQuery 日誌事件會寫入三個條目:一個條目在工作取得資料庫連接之後,另一個條目在工作開始準備 SQL 語句之後,以及在 SQL 語句執行完成之後再寫入一個條目。
下列 Integration Services 物件具有自訂日誌條目:
日誌條目
套件/包裹
下表列出套件的自訂日誌條目。
| 記錄項目 | 說明 |
|---|---|
PackageStart |
表示封裝開始執行。 注意:此記錄項目會自動寫入記錄檔。 您無法將其排除。 |
PackageEnd |
表示套件已完成。 注意:此記錄項目會自動寫入記錄檔。 您無法將其排除。 |
Diagnostic |
提供影響封裝執行之系統組態的相關信息,例如可以同時執行的數目可執行檔。 在 Diagnostic 日誌中,條目還包括對外部數據提供者的呼叫的前後條目。 如需詳細資訊,請參閱 疑難解答工具套件連線問題。 |
大量插入任務
下表列出「大量插入」工作的自訂記錄項目。
| 記錄項目 | 說明 |
|---|---|
DTSBulkInsertTaskBegin |
指出大量插入已經開始。 |
DTSBulkInsertTaskEnd |
指出大量插入已經完成。 |
DTSBulkInsertTaskInfos |
提供有關工作的描述性資訊。 |
資料流程任務
下表列出資料流任務的自定義日誌項目。
| 記錄項目 | 說明 |
|---|---|
BufferSizeTuning |
指出數據流工作已變更緩衝區的大小。 記錄專案描述大小變更的原因,並列出暫時的新緩衝區大小。 |
OnPipelinePostEndOfRowset |
表示元件已指定其數據列集結尾訊號,而這個訊號是由方法的最後一次呼叫 ProcessInput 所設定。 針對處理輸入的資料流程中每個元件,都會寫入一個條目。 條目包括元件的名稱。 |
OnPipelinePostPrimeOutput |
表示元件已完成對 方法的最後一 PrimeOutput 次呼叫。 視數據流而定,可能會寫入多個日誌條目。 如果元件是來源,這表示元件已完成處理數據列。 |
OnPipelinePreEndOfRowset |
表示元件即將接收其數據列集結尾訊號,而這個訊號是由方法的最後一次呼叫 ProcessInput 所設定。 針對處理輸入的資料流程中每個元件,都會寫入一個條目。 條目包括元件的名稱。 |
OnPipelinePrePrimeOutput |
表示元件即將從 PrimeOutput 方法接收其呼叫。 視數據流而定,可能會寫入多個日誌條目。 |
OnPipelineRowsSent |
報告透過呼叫 ProcessInput 方法提供給元件輸入的行數。 記錄條目包含元件名稱。 |
PipelineBufferLeak |
提供緩衝區管理員消失后,讓緩衝區保持運作之任何元件的相關信息。 這表示緩衝區資源未釋放,而且可能會導致記憶體流失。 記錄專案會提供元件的名稱和緩衝區的標識碼。 |
PipelineExecutionPlan |
報告數據流的執行計劃。 它提供如何將緩衝區傳送至元件的相關信息。 該資訊將與 PipelineExecutionTrees 項目結合,以描述任務中發生的情況。 |
PipelineExecutionTrees |
報告數據流中配置的執行樹狀結構。 數據流引擎的排程器會使用樹狀結構來建置數據流的執行計劃。 |
PipelineInitialization |
提供工作的初始設定資訊。 這項資訊包括用來暫存 BLOB 資料的目錄、預設緩衝區大小,以及緩衝區中的數據列數目。 視數據流工作的組態而定,可能會寫入多個記錄專案。 |
執行 DTS 2000 工作
下表列出執行 DTS 2000 工作的自訂日誌項目。
| 記錄項目 | 說明 |
|---|---|
ExecuteDTS80PackageTaskBegin |
表示工作開始執行 DTS 2000 套件。 |
ExecuteDTS80PackageTaskEnd |
表示工作已完成。 注意:DTS 2000 套件可能會在工作結束後繼續執行。 |
ExecuteDTS80PackageTaskTaskInfo |
提供有關工作的描述性資訊。 |
ExecuteDTS80PackageTaskTaskResult |
報告工作執行之 DTS 2000 套件的執行結果。 |
執行程序任務
下表列出執行程序任務的自定義日誌條目。
| 記錄項目 | 說明 |
|---|---|
ExecuteProcessExecutingProcess |
提供關於執行工作所配置之可執行檔的相關信息。 會寫入兩個日誌條目。 其中一個包含工作執行之可執行檔的名稱和位置相關信息,另一個則會記錄可執行文件的結束。 |
ExecuteProcessVariableRouting |
提供哪些變數會路由傳送至可執行檔的輸入和輸出的相關信息。 記錄項目會針對 stdin (輸入)、stdout (輸出) 和 stderr (錯誤輸出) 寫入。 |
執行 SQL 工作
下表描述執行 SQL 工作的自訂日誌條目。
| 記錄項目 | 說明 |
|---|---|
ExecuteSQLExecutingQuery |
提供 SQL 語句執行階段的相關信息。 會在工作取得資料庫連線時、開始準備 SQL 語句時,以及完成執行 SQL 語句後寫入記錄條目。 準備階段的日誌項目包括任務所使用的 SQL 語句。 |
檔案系統任務
以下表格描述了文件系統任務的自訂日誌條目。
| 記錄項目 | 說明 |
|---|---|
FileSystemOperation |
報告任務所執行的操作。 當檔案系統作業啟動時,會寫入日誌條目,並包含來源和目的地的相關資訊。 |
FTP 工作
下表列出 FTP 工作的自訂記錄項目。
| 記錄項目 | 說明 |
|---|---|
FTPConnectingToServer |
指出工作已經起始與 FTP 伺服器的連接。 |
FTPOperation |
報告工作執行之 FTP 作業的開始及其類型。 |
消息佇列工作
下表列出訊息佇列任務的自訂日誌項目。
| 記錄項目 | 說明 |
|---|---|
MSMQAfterOpen |
表示工作已完成開啟消息佇列。 |
MSMQBeforeOpen |
表示任務已開始開啟消息佇列。 |
MSMQBeginReceive |
表示任務開始接收訊息。 |
MSMQBeginSend |
表示任務開始傳送訊息。 |
MSMQEndReceive |
表示任務已完成接收訊息。 |
MSMQEndSend |
表示任務已完成傳送訊息 |
MSMQTaskInfo |
提供有關工作的描述性資訊。 |
MSMQTaskTimeOut |
表示任務超時。 |
腳本任務
下表描述了指令碼任務的自定義記錄條目。
| 記錄項目 | 說明 |
|---|---|
ScriptTaskLogEntry |
報告在腳本中實作記錄的結果。 每次呼叫 Log 方法的 Dts 物件時,都會寫入日誌項目。 執行程式代碼時,會撰寫專案。 如需詳細資訊,請參閱 在腳本工作中記錄。 |
發送郵件任務
下表列出寄送郵件任務的自訂日誌項目。
| 記錄項目 | 說明 |
|---|---|
SendMailTaskBegin |
表示任務開始進行發送電子郵件。 |
SendMailTaskEnd |
表示工作已完成傳送電子郵件訊息。 |
SendMailTaskInfo |
提供有關工作的描述性資訊。 |
資料庫移轉任務
下表列出傳送資料庫工作的自定義記錄專案。
| 記錄項目 | 說明 |
|---|---|
SourceDB |
指定任務複製的資料庫。 |
SourceSQLServer |
指定從中複製資料庫的計算機。 |
轉移錯誤訊息任務
下表列出傳送錯誤訊息工作的自定義記錄專案。
| 記錄項目 | 說明 |
|---|---|
TransferErrorMessagesTaskFinishedTransferringObjects |
指示任務已完成傳輸錯誤訊息。 |
TransferErrorMessagesTaskStartTransferringObjects |
表示工作已開始傳送錯誤訊息。 |
傳送作業工作
下表列出了傳輸任務的自訂日誌條目。
| 記錄項目 | 說明 |
|---|---|
TransferJobsTaskFinishedTransferringObjects |
表示工作已完成傳輸 SQL Server Agent 作業。 |
TransferJobsTaskStartTransferringObjects |
表示工作開始傳送 SQL Server Agent 作業。 |
轉移登入任務
下表列出轉移登入任務的自定義日誌條目。
| 記錄項目 | 說明 |
|---|---|
TransferLoginsTaskFinishedTransferringObjects |
表示工作已完成了登入轉移。 |
TransferLoginsTaskStartTransferringObjects |
表示工作已開始移轉登入。 |
傳送主資料庫預存程序的工作
下表列出了轉移主預存程序任務的自訂日誌條目。
| 記錄項目 | 說明 |
|---|---|
TransferStoredProceduresTaskFinishedTransferringObjects |
表示已完成將儲存在 master 資料庫中的使用者定義預存程序的傳輸。 |
TransferStoredProceduresTaskStartTransferringObjects |
表示已開始轉移儲存在 master 資料庫中的使用者定義儲存程序。 |
將 SQL Server 物件轉移的任務
下表列出了傳輸 SQL Server 物件任務的自訂記錄條目。
| 記錄項目 | 說明 |
|---|---|
TransferSqlServerObjectsTaskFinishedTransferringObjects |
表示工作已完成傳送 SQL Server 資料庫物件。 |
TransferSqlServerObjectsTaskStartTransferringObjects |
表示工作已開始傳送 SQL Server 資料庫物件。 |
Web 服務工作
您可以啟用針對 Web 服務工作的自訂記錄條目,這些條目列於下表。
| 記錄項目 | 說明 |
|---|---|
WSTaskBegin |
任務開始進行存取網路服務。 |
WSTaskEnd |
任務已完成一個 Web 服務方法。 |
WSTaskInfo |
工作的描述性資訊。 |
WMI 數據讀取器任務
下表列出 WMI 資料讀取任務的自訂日誌條目。
| 記錄項目 | 說明 |
|---|---|
WMIDataReaderGettingWMIData |
表示工作開始讀取 WMI 數據。 |
WMIDataReaderOperation |
報告工作執行的 WQL 查詢。 |
WMI 事件監看員工作
下表列出 WMI 事件監看員任務的自訂日誌項目。
| 記錄項目 | 說明 |
|---|---|
WMIEventWatcherEventOccurred |
表示發生了工作正在監視的事件。 |
WMIEventWatcherTimedout |
表示任務超時。 |
WMIEventWatcherWatchingForWMIEvents |
表示工作開始執行 WQL 查詢。 條目包含查詢。 |
XML 任務
下表描述 XML 任務的自訂日誌項目。
| 記錄項目 | 說明 |
|---|---|
XMLOperation |
提供有關任務執行操作的資訊 |