스크립트 태스크에서 로깅Logging in the Script Task

Integration ServicesIntegration Services 패키지의 로깅 기능을 사용하면 나중에 분석할 수 있도록 미리 정의된 이벤트나 사용자 정의 메시지를 기록하여 실행 진행률, 결과 및 문제에 대한 세부 정보를 기록할 수 있습니다.The use of logging in Integration ServicesIntegration Services packages lets you record detailed information about execution progress, results, and problems by recording predefined events or user-defined messages for later analysis. 스크립트 태스크에서 사용할 수는 Log 의 메서드는 Dts 사용자 정의 데이터를 기록 하는 개체입니다.The Script task can use the Log method of the Dts object to log user-defined data. 로깅이 설정 된 경우와 ScriptTaskLogEntry 이벤트가 로깅 대상으로 선택 되어는 세부 정보 탭은 SSIS 로그 구성 대화 상자, 한 번 호출 하는 Log 메서드 작업에 대해 구성 된 모든 로그 공급자에 이벤트 정보를 저장 합니다.If logging is enabled, and the ScriptTaskLogEntry event is selected for logging on the Details tab of the Configure SSIS Logs dialog box, a single call to the Log method stores the event information in all the log providers configured for the task.

참고

스크립트 태스크에서 직접 로깅을 수행할 수도 있지만 로깅보다는 이벤트를 구현하는 것이 좋습니다.Although you can perform logging directly from your Script task, you may want to consider implementing events rather than logging. 이벤트를 사용하면 이벤트 메시지의 로깅 기능을 사용할 수 있을 뿐 아니라 기본 또는 사용자 정의 이벤트 처리기를 사용하여 이벤트에 응답할 수도 있습니다.When using events, not only can you enable the logging of event messages, but you can also respond to the event with default or user-defined event handlers.

로깅에 대 한 자세한 내용은 참조 Integration services( Ssis) 로깅합니다.For more information about logging, see Integration Services (SSIS) Logging.

로깅 예Logging Example

다음 예에서는 처리된 행 수를 나타내는 값을 로깅하여 스크립트 태스크에서의 로깅을 보여 줍니다.The following example demonstrates logging from the Script task by logging a value that represents the number of rows processed.

Public Sub Main()  

    Dim rowsProcessed As Integer = 100  
    Dim emptyBytes(0) As Byte  

    Try  
        Dts.Log("Rows processed: " & rowsProcessed.ToString, _  
            0, _  
            emptyBytes)  
        Dts.TaskResult = ScriptResults.Success  
    Catch ex As Exception  
        'An error occurred.  
        Dts.Events.FireError(0, "Script Task Example", _  
            ex.Message & ControlChars.CrLf & ex.StackTrace, _  
            String.Empty, 0)  
        Dts.TaskResult = ScriptResults.Failure  
    End Try  

End Sub  
using System;  
using System.Data;  
using Microsoft.SqlServer.Dts.Runtime;  

public class ScriptMain  
{  

    public void Main()  
        {  
            //  
            int rowsProcessed = 100;  
            byte[] emptyBytes = new byte[0];  

            try  
            {  
                Dts.Log("Rows processed: " + rowsProcessed.ToString(), 0, emptyBytes);  
                Dts.TaskResult = (int)ScriptResults.Success;  
            }  
            catch (Exception ex)  
            {  
                //An error occurred.  
                Dts.Events.FireError(0, "Script Task Example", ex.Message + "\r" + ex.StackTrace, String.Empty, 0);  
                Dts.TaskResult = (int)ScriptResults.Failure;  
            }  

        }  

}}

외부 리소스External Resources

관련 항목:See Also

Integration Services ( Ssis) 로깅Integration Services (SSIS) Logging